Я бы хотел подключить Python и сервер Apache 2 в Ubuntu.
Поэтому необходимо ввести следующий код сервера Ubuntu.
pip install Django
sudo apt-get install appache2
sudo apt-get install libapache2-mod-wsgi-py3
Затем я создал проект Python и папку приложения как Python venv.
Код для Apache 2 000-default.conf выглядит следующим образом:
<virtualhost *:80>
WSGIDaemonProcess bot python-path=/home/ubuntu/Django/bot:/home/ubuntu/Django/myvenv/lib/python3.5/site-packages
ServerAdmin webmaster@localhost
WSGIScriptAlias /52.78.108.223 /home/ubuntu/Django/bot/wsgi.py
<Directory /home/ubuntu/Django/bot>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</virtualhost>
Местоположение правильное. Мисс не набирается.
Первый аргумент «WSGIScriptAlias /» должен быть пустым, но если вы поместите его в пустое пространство, вы не увидите страницу «он прошел», когда вы нажмете этот IP. Поэтому я поставил внешний IP сервера. Тогда все прошло хорошо.
Просмотр журнала ошибок Apache 2.
[среда, 02 мая 21: 32: 28.100569 2018] [wsgi: warn] [pid 22648: tid 140282945054592] mod_wsgi: скомпилировано для Python / 3.5.1 +.
[Ср 02 мая 21: 32: 28.100633 2018] [wsgi: warn] [pid 22648: tid 140282945054592] mod_wsgi: время выполнения с использованием Python / 3.5.2.
[Ср 02 мая 21: 32: 28.101406 2018] [mpm_event: note] [pid 22648: tid 140282945054592] AH00489: Apache / 2.4.18 (Ubuntu) mod_wsgi / 4.3.0, настроенный Python / 3.5.2 - возобновление нормальные операции
[ср. 02 мая 21: 32: 28.101426 2018] [core: note] [pid 22648: tid 140282945054592] AH00094: Командная строка: '/ usr / sbin / apache2'
[Ср 02 мая 21: 32: 28.191175 2018] [wsgi: error] [pid 22651: tid 140282945054592] mod_wsgi (pid = 22651): вызов метода site.addsitedir () не выполнен для '(null)', остановка.
[ср. 02 мая 21: 32: 28.192041 2018] [wsgi: ошибка] [pid 22651: tid 140282945054592] mod_wsgi (pid = 22651): сбой вызова site.addsitedir () для / home / ubuntu / Джанго / myvenv / Библиотека / python3.5 / сайт-пакеты.
[ср. 02 мая 21: 33: 21.733277 2018] [mpm_event: уведомление] [pid 22648: tid 140282945054592] AH00494: получено SIGHUP. Попытка перезагрузки
[ср. 02 мая 21: 33: 21.787095 2018] [wsgi: warn] [pid 22648: tid 140282945054592] mod_wsgi: скомпилировано для Python / 3.5.1 +.
[ср. 02 мая 21: 33: 21.787410 2018] [wsgi: warn] [pid 22648: tid 140282945054592] mod_wsgi: время выполнения с использованием Python / 3.5.2.
[Ср 02 мая 21: 33: 21.788397 2018] [mpm_event: note] [pid 22648: tid 140282945054592] AH00489: Apache / 2.4.18 (Ubuntu) mod_wsgi / 4.3.0, настроенный Python / 3.5.2 - возобновление нормальные операции
[ср. 02 мая 21: 33: 21.788447 2018] [core: note] [pid 22648: tid 140282945054592] AH00094: Командная строка: '/ usr / sbin / apache2'
[Ср 02 мая 21: 33: 21.860854 2018] [wsgi: error] [pid 22781: tid 140282945054592] mod_wsgi (pid = 22781): вызов метода site.addsitedir () не выполнен для '(null)', остановка.
[Ср 02 мая 21: 33: 21.860889 2018] [wsgi: error] [pid 22781: tid 140282945054592] mod_wsgi (pid = 22781): сбой при вызове site.addsitedir () для / home / ubuntu / Джанго / myvenv / Библиотека / python3.5 / сайт-пакеты.
Получается так.
Я искал в интернете. Говорят, что версия wsgi низкая.
Однако wsgi, используемый apache2, может быть установлен только с помощью 'sudo apt-get install libapache2-mod-wsgi-py3'.
Журнал ошибок Apache 2 показывает, что версия wsgi - 4.3.0.
Если вы устанавливаете последнюю версию wsgi с помощью 'pip install mod-wsgi', журнал ошибок Apache 2 покажет 4.3.0.
'Не удалось вызвать' site.addsitedir () 'для' (null) ', остановка.' Журнал ошибок все еще появляется.
Как мне устранить эту ошибку?