Sou relativamente novo em toda a tecnologia de servidores e segui este tutorial para implantar meu aplicativo django em um servidor Web Apache, usando mod_wsgi:
link
Aqui está o meu arquivo de hosts virtuais:
<VirtualHost *:80>
ServerName www.abcxyz.org
ServerAlias abcxyz.org
WSGIScriptAlias / /var/www/abcxyz/django/abcxyz/wsgi_prod.py
Alias /static/ /var/www/abcxyz/static/
<Location "/static/">
Options -Indexes
</Location>
</VirtualHost>
Pelo que entendi, o arquivo wsgi_prod.py
só deve ser executado uma vez quando o servidor for iniciado (ou quando receber a primeira solicitação - não tenho certeza disso). Mas no meu aplicativo é executado várias vezes, ao enviar solicitações para o servidor.
Não é executado em todos os pedidos, mas em alguns deles. E também há algumas solicitações que acionam a execução de wsgi_prod.py
apenas algumas vezes.
Este é o meu arquivo wsgi_prod.py:
import os
import sys
import site
import thread
# Add the site-packages of the chosen virtualenv to work with
site.addsitedir('/etc/Envs/abcxyz/local/lib/python2.7/site-packages')
# Add the app's directory to the PYTHONPATH
sys.path.append('/var/www/abcxyz/django')
sys.path.append('/var/www/abcxyz/django/abcxyz')
os.environ['DJANGO_SETTINGS_MODULE'] = 'abcxyz.settings.production'
# Activate your virtual env
activate_env=os.path.expanduser("/etc/Envs/abcxyz/bin/activate_this.py")
execfile(activate_env, dict(__file__=activate_env))
print "WSGI RUN!!!"
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Alguém tem alguma idéia do que poderia ter dado errado no meu caso e onde eu poderia começar a procurar o erro?