Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Как запускать скрипты в cgi-bin


Автор: bork 30.10.2010, 21:48
Взял пример из http://ru.wikipedia.org/wiki/CGI  
вставил в cgi-bin   пишу адрес  http://sait.ru/cgi-bin/test.cgi

В ответ 

Internal Server Error

Права менял, как правильно запускать?

Автор: spin2 31.10.2010, 13:33
bork, дальше тебе нужно смотреть лог от веб-сервера. Там написано, что не так. Может настройки неправильные, может скрипт кривой.

Автор: WolfAlone 23.12.2010, 17:24
Сталкивался с такой проблемой буквально вчера. Такую ошибку сервер может выдавать в 2-х случаях (*по моим наблюдениям):
1. Не правильно сформирован заголовок;
2. Скрипт, при запуске выдаёт ошибку.

1. Попробуйте сделать такой скрипт:
Код

print('Content-type: text/plain\r\n') #обязательный для браузера заголовок
print('Hello world!')


2. Попробуйте запустить скрипт из командной строки и посмотреть результат его работы. Не выводил ли он ошибок?

3. Ещё стоит попробовать chmod +x script_name (где "script_name" имя файла-скрипта, с расширением) - это даст права скрипту на запуск. *Это действительно для Linux-систем, в Windows такие действия не требуются.

Не забудьте про строку: "#!/usr/bin/python". Это т.н. "шебанг", в большинстве случаев он обязателен! И должен он находиться на самой первой строке файла-скрипта. После #! указывается путь до интерпретатора Python. Если вы работаете под Windows - попробуйте заменить "/usr/bin/python" на "C:\Python31\python.exe" (это в моём случае [в случае стандартной установки Python3.1, без изменения пути], в вашем случае нужно указать свой путь к интерпретатору Python.
P.S. Возможно стоит попробовать заменить "\" на "/", т.к. в Windows помниться мне работает и "/" и "\", но в некоторых случая нужно именно "/".

Автор: spin2 23.12.2010, 18:41
WolfAlone, но вся эта информация есть в лог-файле веб-сервера, поэтому с него и надо начинать.

Автор: WolfAlone 23.12.2010, 20:30
spin2, полностью с Вами согласен, но мало ли... Вдруг человек не умеет логи читать (что скорее всего, если задаёт подобный вопрос). Лично я до сих пор не могу понять, почему сервер "падает", после установки mod_wsgi для Python3, но при этом для Python2.6 работает отлично! А в лохаг, кроме как "сервер упал" больше ничего не написано... :(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)