403 proibido para django + gunicorn + systemd + apache?

0

Eu segui este guia e isso para implantar meu django com guniconrn e apache.

Mas eu não entendo muito bem o este guia que diz :

(You still need to specify Alias and for the static and media files, in addition to the above.)

Mas de qualquer maneira, estas são todas as minhas configurações. Meu aplicativo django está em /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

Depois de reiniciar meu apache, recebo 403 no link ou

Forbidden

You don't have permission to access / on this server.
Apache/2.4.25 (Ubuntu) Server at localhost Port 8000

Alguma idéia?

Estou no Ubuntu 17.04

EDITAR:

Eu vejo alguns processos python em execução, mas não tenho certeza se estão corretos ou não:

$ 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
    
por laukok 20.05.2017 / 00:47

1 resposta

1

Eu sei que esta é uma questão antiga, e OP pode ter resolvido o problema, mas até onde eu posso ver, você iniciou o Gunicorn na porta 8000 e o apache informado para ouvir a mesma porta. Como dois aplicativos estão escutando na mesma porta, isso provavelmente cria o conflito. A julgar pela saída de seus processos, o gunicorn já está em execução. Será o suficiente para remover Listen 8000 do arquivo de configuração do apache e reiniciar o apache novamente. Isso deve resolver o problema.

    
por Liliane 03.07.2018 / 11:04