Я следовал этому руководству и этому для развертывания моего django с guniconrn и апачем.
Но я не вполне получаю то, что это руководство это говорит:
(Все еще необходимо указать Псевдоним и для помех и медиа-файлов, в дополнение к вышеупомянутому.)
Но так или иначе это вся моя конфигурация. Мое django приложение в /var/www/html/django-project/helloapp
/etc/systemd/system/gunicorn.service:
[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target
[Service]
PIDFile=/run/gunicorn/pid
User=lau
Group=lau
RuntimeDirectory=gunicorn
WorkingDirectory=/var/www/html/django-project/helloapp
ExecStart=/usr/bin/gunicorn --pid /run/gunicorn/pid \
--bind unix:/run/gunicorn/socket helloapp.wsgi
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
/etc/systemd/system/gunicorn.socket:
[Unit]
Description=gunicorn socket
[Socket]
ListenStream=/run/gunicorn/socket
[Install]
WantedBy=sockets.target
/etc/tmpfiles.d/gunicorn.conf:
d /run/gunicorn 0755 lau www-data -
/etc/apache2/apache2.conf:
<Directory /var/www/html/django-project/helloapp>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
/etc/apache2/sites-available/000-default.conf:
<VirtualHost *:80>
ProxyPass /static/ !
ProxyPass /media/ !
ProxyPass / http://localhost:8000/
</VirtualHost>
/etc/apache2/ports.conf:
Listen 80
Listen 8000
После перезапуска моего апача я добираюсь 403 по http://127.0.0.1/ или http://127.0.0.1:8000
Forbidden
You don't have permission to access / on this server.
Apache/2.4.25 (Ubuntu) Server at localhost Port 8000
Какие-либо идеи?
Я нахожусь на Ubuntu 17.04
Править:
Я вижу, что некоторые процессы Python работают, но не уверенный, если это корректно или нет:
$ ps -wef | grep python
root 2418 1 0 06:16 ? 00:00:00 /usr/bin/python3 /usr/share/apt-xapian-index/update-apt-xapian-index-dbus
lau 25488 28678 0 23:49 pts/2 00:00:00 grep --color=auto python
lau 30605 1 0 18:30 ? 00:00:02 /var/www/html/django-project/helloapp/env/bin/python /var/www/html/django-project/helloapp/env/bin/gunicorn --workers 3 --bind unix:/var/www/html/django-project/helloapp.sock helloapp.wsgi:application
lau 30609 30605 0 18:30 ? 00:00:00 /var/www/html/django-project/helloapp/env/bin/python /var/www/html/django-project/helloapp/env/bin/gunicorn --workers 3 --bind unix:/var/www/html/django-project/helloapp.sock helloapp.wsgi:application
lau 30610 30605 0 18:30 ? 00:00:00 /var/www/html/django-project/helloapp/env/bin/python /var/www/html/django-project/helloapp/env/bin/gunicorn --workers 3 --bind unix:/var/www/html/django-project/helloapp.sock helloapp.wsgi:application
lau 30612 30605 0 18:30 ? 00:00:00 /var/www/html/django-project/helloapp/env/bin/python /var/www/html/django-project/helloapp/env/bin/gunicorn --workers 3 --bind unix:/var/www/html/django-project/helloapp.sock helloapp.wsgi:application
Я знаю, что это - древний вопрос, и OP, возможно, решил вопрос, но насколько я вижу, Вы запустили Gunicorn на порте 8000, и сказанные апачи для слушания того же порта. Так как два приложения слушают на том же порте, который, вероятно, создает конфликт. Судя по выводу Вас процессы, gunicorn уже работает. Будет достаточно удалить Listen 8000
от апачского конфигурационного файла и апача перезапуска снова. Это должно разрешить проблему.