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

Настройка apache для запуска пирамиды с mod_wsgi на EC2

Я пытаюсь настроить свой сервер с apache на сервере amazon EC2, но сейчас он не работает. В файлах конфигурации

В / etc / apache2 у меня есть:

httpd.conf:

LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /home/ubuntu/www/env

modwsgi.conf:

WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
WSGIDaemonProcess pyramid user=Wiz group=admin threads=4 python-path=/home/ubuntu/www/env/lib/python2.7/site-packages
WSGIScriptAlias /Visus /home/ubuntu/www/env/pyramid.wsgi

<Directory /home/ubuntu/www/env>
  WSGIProcessGroup pyramid
  Order allow,deny
  Allow from all
</Directory>

В моем virtualenv у меня есть:

pyramid.wsgi:

from pyramid.paster import get_app, setup_logging
ini_path = '/home/ubuntu/www/env/Wiz/production.ini'
setup_logging(ini_path)
application = get_app(ini_path, 'main')

И когда я перехожу на базовый веб-сайт, появляется веб-страница apache по умолчанию, в которой говорится, что сервер работает, но когда я перехожу на example.com/Visus, я получаю 404, когда мне нужно получить свое приложение. Что не так?

Из комментариев мне кажется, что ваша базовая настройка не работает. В общем, модель Ubuntu для управления настройками Apache заключается в использовании a2 инструменты (a2enmod, a2ensiteи т. д.) вместо редактирования базы *.conf файлы. Это может занять некоторое время, но работает нормально.

Эта страница имеет очень хорошее пошаговое руководство по настройке pyramid для запуска на Ubuntu. Это для 11.04 но я не вижу в нем ничего некорректного для более свежих версий. В частности, обратите внимание, что единственные изменения конфигурации для установки Apache находятся в файле конфигурации вашего нового сайта. Вы не трогаете остальную часть конфигурации Apache по умолчанию.

Поскольку вы используете EC2, вероятно, проще всего запустить новый экземпляр и следовать инструкциям на этой странице. Не забудьте настроить параметры группы безопасности, чтобы разрешить доступ к порту 80.