Запуск файла .py на сервере LAMP (CentOS) - с точки зрения разработчика PHP - PullRequest
0 голосов
/ 30 июля 2010

Я - разработчик LAMP, пробующий Python в первый раз ... Я в порядке с выбором синтаксиса, но я не могу понять, как запустить его на сервере! I пробовал следующее

  • загрузка filename.py в обычный веб / публичный каталог. chmod 777, 711, 733, 773 ... (варианты исполнения)
  • положить filename.py в cgi-bin, chmod, как указано выше.

При наборе example.com/filename.py просто загружается текстовый файл - кажется, что ничего не было скомпилировано / проанализировано / etc!

(я считаю, что Python установлен, так как whereis python на моем сервере показывает /usr/bin/python среди нескольких других каталогов)

Много слов для простого вопроса - как запустить файл python на сервере CentOS?

Ответы [ 3 ]

3 голосов
/ 30 июля 2010

Это большой умственный сдвиг от PHP. Файлы Python не просто интерпретируются как файлы .php [1]. Самый простой способ, с помощью которого я нашел работу с Python, - это Bottle framework.

Я рекомендую вам немного почитать http://docs.python.org/howto/webservers.html. Это очень информативно.

[1]: Примечание: существует такая вещь, как Python Server Pages, но она не используется широко.

1 голос
/ 30 ноября 2013

Я согласен с другими комментариями, что могут быть более эффективные способы запуска скрипта Python.Вот несколько вещей, которые можно попробовать, если вы просто хотите запустить скрипт Python, поместив его в каталог cgi-bin.Сначала вы захотите найти файл httpd.conf.Один из способов сделать это:

locate httpd.conf

Ваш файл httpd.conf, вероятно, находится в /etc/httpd/conf/httpd.conf для CentOS.Отредактируйте файл и убедитесь, что файлы Python распознаются, особенно если вы будете использовать их вне каталогов ScriptedAliased:

AddHandler cgi-script .cgi .py

Перезапустите веб-сервер Apache:

apachectl restart

Создайтеследующий файл test.py в каталоге / var / www / cgi-bin (по умолчанию для CentOS):

#! /usr/bin/python
print "Content-type: text/html"
print ""
print "Hello, World!"

Вы хотите сделать файл исполняемым с помощью:

chmod 775 test.py

Это должно быть все, что вам нужно сделать.Теперь вы можете посетить http://{your -domain} /cgi-bin/test.py и в результате "Hello, World!"должен появиться.

1 голос
/ 30 июля 2010

вы можете использовать cgi, но это не будет иметь большой производительности, поскольку он запускает новый процесс для каждого запроса.

Более эффективными альтернативами являются использование fastcgi или wsgi

Третьим вариантом являетсязапустить мини-сервер Python и прокси-запросы от apache, используя правила перезаписи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...