Назад | Перейти на главную страницу

Есть ли эквивалент php5-cgi для python?

nginx не позволяет напрямую выполнять внешние программы, поэтому для запуска CGI вам необходимо запустить автономный бэкэнд fcgi и подключиться к нему с помощью fastcgi_pass директива.

Для php это просто, например с помощью spawn-fcgi и php5-cgi, но я не нашел ничего похожего для python.

Я знаю, что существуют реализации fcgi для конкретных приложений и фреймворков, но есть ли что-нибудь для запуска простых CGI Python (CGI, реализованных с помощью общего модуля cgi)?

Есть пакет, известный как flup, фактически предложенный официальная документация Python. В принципе, flup позволяет вам обернуть любое приложение (в вашем случае - сценарий CGI) на сервере WSGI. Это может потребовать некоторой настройки, но оно должно дать вам то, что вы ищете.

Есть также некоторые отличные записи в документации nginx освещая этот вопрос.

Также обратите внимание, что простой запуск скриптов Python (через mod_cgi или mod_cgid) явно НЕ использует FCGI, поэтому без оболочки вокруг вашего скрипта это будет невозможно.

Надеюсь, это поможет!