Могу ли я запустить PHP и Python на одном сервере Apache, используя mod_vhost_alias и mod_wsgi?

В настоящее время я запускаю свой собственный сервер "в облаке" с PHP, используя mod_fastcgi и mod_vhost_alias. Моя конфигурация mod_vhost_alias использует VirtualDocumentRoot из /var/www/%0/htdocs, чтобы я мог обслуживать любой домен, который маршрутизирует на IP-адрес моего сервера, из каталога с таким именем.

Я хотел бы начать писать и обслуживать некоторые проекты Python со своего сервера, но я не уверен, как настроить все так, чтобы каждый сайт имел доступ к соответствующему обработчику сценариев.

Например, для моего блога dead-parrot.com я использую платформу блога PHP (Habari, а не WordPress). Но я хотел бы запустить приложение, которое я написал во Flask, на not-dead-yet.com.

Я хотел бы разрешить выполнение Python с минимальным нарушением моей конфигурации mod_vhost_alias, чтобы я мог продолжать размещать новые домены на этом сервере, просто добавив соответствующий каталог. Я готов изменить структуру каталогов, если это необходимо, но предпочел бы не добавлять дополнительные, специфичные файлы конфигурации vhost для каждого нового домена, работающего на Python, поскольку, помимо того, что он менее удобен, чем моя текущая настройка с использованием только PHP, он выглядит довольно Хакать, чтобы эти имена были названы ранее в алфавитном порядке, чтобы Apache мог подобрать их перед единственной конфигурацией mod_vhost_alias vhost.

Знаете ли вы, как я могу настроить это для одновременной работы Python и PHP так же удобно, как для PHP? Спасибо!

2 ответа

Вот некоторая информация, которая может помочь заставить работать Python (несмотря на название, это не относится к Ubuntu):

http://infobees.wordpress.com/2011/05/15/python-cgi/

Я думаю, что вы можете быть смущены здесь, так как у вас создается впечатление, что конкретным доменом может быть только PHP или Python, и вы должны указать, какой из 2 использовать в каждом случае? Apache просто вызовет соответствующий процессор в зависимости от того, является ли запрашиваемый ресурс расширением.php или.py, что означает, что все домены могут использовать PHP и Python, если вы зададите параметры AddHandler (и, возможно, требуются разрешения разрешения python <каталог> в) глобальное место, такое как httpd.conf.

Поскольку директива AddHandler может использоваться в.htaccess (при условии наличия надлежащих разрешений AllowOverride в httpd или vhosts), вы можете просто включить это в файлы htaccess только на тех доменах, на которых вы хотите запустить python.

Даже я сталкивался с такой же ситуацией, и сначала мне было интересно в google, но потом понял и исправил, я использую сервис EC2 в aws с ubuntu и создал псевдоним php и python по отдельности, и теперь я могу получить доступ к обоим.

Другие вопросы по тегам