Eu passei o dia inteiro tentando encontrar uma resposta para o meu problema, mas falhei e decidi postar meu problema aqui. Então eu desenvolvi um aplicativo Django e agora estou tendo problemas em implantá-lo em um servidor do Apache (httpd). Estou atualmente executando o CentOS 7.2 se for relevante.
Eu tenho acompanhado esse tutorial para fazer o que eu queria: link
Obviamente, não criei um novo projeto desde o início, já que eu já tinha um e apenas o ajustei para o tutorial. Quando terminei e reiniciei o serviço httpd, recebi a seguinte mensagem de erro quando tentei acessar o site:
Forbidden
You don't have permission to access / on this server.
Não é um problema de firewall, pois quando eu removo o django.conf (ou seja, reverta as alterações), o site padrão do apache é exibido.
Meu arquivo django.conf tem a seguinte aparência:
Alias /static /home/dudu/DjangoProject/mysite/static
<Directory /home/dudu/DjangoProject/mysite/static>
Require all granted
</Directory>
<Directory /home/dudu/DjangoProject/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess DjangoProject python-path=/home/dudu/DjangoProject:/home/dudu/DjangoProject/DjangoProjectEnv/lib/python2.7/site-packages
WSGIProcessGroup DjangoProject
WSGIScriptAlias / /home/dudu/DjangoProject/mysite/wsgi.py
A estrutura de pastas relevante:
/home/dudu/
|--DjangoProject
| |--manage.py
| |--db.sqlite3
| |--DjangoProjectEnv (with python environment)
| |--mysite
| | |--settings.py
| | |--wsgi.py
| | |--other related django files
Além disso, na parte inferior do meu settings.py, tenho o seguinte:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, '/static/')
E meu arquivo wsgi.py é o seguinte:
import os
from django.core.wsgi import get_wsgi_application
os.environ["DJANGO_SETTINGS_MODULE"] = "mysite.settings" # had os.environ.setdefault before
application = get_wsgi_application()
Espero ter incluído todas as informações necessárias e que você possa ajudar! Obrigado antecipadamente!