Выполнить Python CGI из папки / cgi-bin / - PullRequest
1 голос
/ 18 января 2012

У меня есть стандартная установка Apache2 на сервере Ubuntu. Настройки по умолчанию используют ScriptAlias для обозначения от /cgi-bin/ до /usr/lib/cgi-bin/. Если я помещаю свой скрипт Python CGI в /usr/lib/cgi-bin/, он выполняется.

Я создал /var/www/cgi-bin/ с соответствующими разрешениями, удалил строку ScriptAlias, изменил запись Directory в файле default для сайта, переместил файл CGI в /var/www/cgi-bin/ и перезапустил Apache2, но я не удалось запустить скрипт. Он отображался в виде текстового файла в браузере, а не выполнялся. Файл HTML, вызывающий скрипт, ссылается на /cgi-bin/SCRIPT, поэтому я оставил это без изменений. Я попробовал варианты /cgi-bin и /var/www/cgi-bin в файлах конфигурации без успеха. Как я могу получить файл Python CGI для запуска из /var/www/cgi-bin?

Ответы [ 2 ]

4 голосов
/ 18 января 2012

Если вы удалили директиву ScriptAlias, вам, вероятно, следует добавить следующие строки в основной конфиг для каталога или в файл .htaccess:

Options +ExecCGI
AddHandler cgi-script py
0 голосов
/ 18 января 2012

пожалуйста, убедитесь:

  1. файл, который вы вызываете, имеет достаточные права доступа
  2. файл, который вы вызываете, имеет расширение, которое находится в файле .htaccess (см. Ответ новичка)
  3. укажите, как вы хотите запустить скрипт в первой строке файла. Если вы вызываете foo.pl, убедитесь, что #! / Usr / bin / perl находится в первой строке.
...