Я пытаюсь заставить web.py работать с Apache + mod_wsgi в Ubuntu 18.04 (который работает на экземпляре AWS EC2 и, скажем, я могу проверить веб-страницу на www.bla.com), следуя инструкциям / примеру на https://webpy.org/cookbook/mod_wsgi-apache-ubuntu
Однако некоторые из этих инструкций недостаточно ясны, и я очень признателен, если кто-то сможет ответить на следующие вопросы (даже частично). Кроме того, вы можете предоставить свой собственный полный рабочий пример, если вам будет проще.
Обратите внимание, что я сохраняю те же точные имена, которые используются в этих инструкциях, включая appname
и webpy-app
.
В инструкциях говорится, что после установки libapache2-mod-wsgi, ...
... it will also automatically configure Apache to load the mod_wsgi module upon restart. You can confirm the presence of the module in Apache’s available modules directory…
/etc/apache2/mods-available/wsgi.conf
/etc/apache2/mods-available/wsgi.load …as well as in Apache's **enabled modules directory**:
/etc/apache2/mods-enabled/wsgi.conf
/etc/apache2/mods-enabled/wsgi.load
Q1) эти файлы существуют в тех же каталогах, но код находится в / etc / apache2 / mods Файл -available / wsgi.conf закомментирован, например, на этом этапе. Нужно ли здесь что-то делать (например, вставить код внутри wsgi.conf, et c)?
Позже в инструкции говорится:
Configure a website on Apache to load the mod_wsgi module. This can either be your default website, or another Virtual Host, which you can create by copying /etc/apache2/sites-available/default to something like /etc/apache2/sites-available/my-website. Add the following lines, under the DocumentRoot directive:
WSGIScriptAlias /appname /var/www/webpy-app/code.py/
AddType text/html .py
Q2) это не говорит о том, как настроить веб-сайт по умолчанию на Apache для загрузки mod_wsgi. Но если предположить, что я использую другой виртуальный хост, неясно, как его создать с помощью «copying /etc/apache2/sites-available/default
для чего-то вроде /etc/apache2/sites-available/my-website
». Каталога default
нет, поэтому файл 'default refer to
000-default.conf` (или, возможно, default.conf)?
Q3) my-website
- это каталог (или, возможно, другой .conf) файл)?
Q4) Должны ли две строки (например, WSGIScriptAlias ...) (или, может быть, три вместе с инструкцией DocumentRoot
?) Быть записаны в файл 000-default.conf
?
Q5) Каким должен быть путь после DocumentRoot
(должен ли он быть, например, DocumentRoot /var/www/webpy-app/
)?
Следуя инструкциям, нам позже потребуется выполнить: sudo a2ensite my-website
Q6) Опять же, что здесь my-website
(я не думаю, что a2ensite можно применить к каталогу)? Что если я использовал другой виртуальный хост?
Наконец, предполагая, что я использовал точно такие же code.py
(в /var/www/webpy-app/code.py
) в инструкциях, я должен проверить это в браузере, скажем, на http://www.bla.com/appname
.
И, наконец,
Q7) Как мы можем знать, что мы используем сеансы mod_wsgi +?
Q8) И если мы используем сеансы, заменяет ли код в конце инструкции предыдущий полностью code.py (не касается импорта ...)?