我正在尝试使用Apache(2.4)和mod_wsgi运行dJango(1.5)应用程序。我遵循了标准教程。我还以文件所有者(我自己)和组的身份运行了apache用户和组。在我点击一个url后,它会等待很长时间,然后给出网关超时。Apache访问了wsgi.py和up-settings.py,因为我在/var/log/apache2/error.log中看到了settings.py中的所有打印语句,但之后没有输出。它没有得到urls.py吗?有人能帮忙吗?我在这里提供httpd.conf。
WSGIDaemonProcess imse_wsgi python-path=/ldata/Imse user=www-data
<VirtualHost *:80>
ServerName wonders.pc.hiit.fi
ServerAlias imse.hiit.fi
Alias /static/ /ldata/Imse/static/
<Directory /ldata/Imse/static>
Require all granted
</Directory>
WSGIScriptAlias /imse /ldata/Imse/Imse/wsgi.py
<Directory /ldata/Imse/Imse>
Require all granted
WSGIProcessGroup imse_wsgi
<Files wsgi.py>
Require all granted
</Files>
</Directory>
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</VirtualHost>
这是wsgi.py
import os
import sys
import django.core.handlers.wsgi
sys.path.append('/ldata/Imse')
sys.path.append('/ldata/Imse/Imse')
os.environ["DJANGO_SETTINGS_MODULE"] = "Imse.settings"
application = django.core.handlers.wsgi.WSGIHandler()
apache2重新启动时的错误日志
[Tue Oct 28 00:03:28.525134 2014] [mpm_event:notice] [pid 26381:tid 139811474503552] AH00491: caught SIGTERM, shutting down
[Tue Oct 28 00:03:29.592849 2014] [mpm_event:notice] [pid 4084:tid 139694197917568] AH00489: Apache/2.4.10 (Debian) mod_wsgi/4.3.0 Python/2.7.8 configured -- resuming normal operations
[Tue Oct 28 00:03:29.592960 2014] [core:notice] [pid 4084:tid 139694197917568] AH00094: Command line: '/usr/sbin/apache2'
当我点击url 时
[Tue Oct 28 00:05:49.754939 2014] [wsgi:error] [pid 4087:tid 139693984982784] Env loaded
[Tue Oct 28 00:05:49.755014 2014] [wsgi:error] [pid 4087:tid 139693984982784] Application loaded
[Tue Oct 28 00:05:49.755776 2014] [wsgi:error] [pid 4087:tid 139693984982784] /ldata/Imse
[Tue Oct 28 00:05:49.755863 2014] [wsgi:error] [pid 4087:tid 139693984982784] No local settings configured, using defaults
[Tue Oct 28 00:05:49.879412 2014] [wsgi:error] [pid 4087:tid 139693984982784] URL imported
[Tue Oct 28 00:05:49.879445 2014] [wsgi:error] [pid 4087:tid 139693984982784] Loading URLs
这些是来自wsgi.py(此处已删除)和settings.py的打印,程序被困在urls.py中,在页面加载近5分钟后,页面显示网关超时,并在error.log中添加了一行,如下所示
[Tue Oct 28 00:10:49.654957 2014] [wsgi:error] [pid 4089:tid 139693995841280] [client 2001:708:140:200:8a51:fbff:fe64:db53:51393] Timeout when reading response headers from daemon process 'imse_wsgi': /ldata/Imse/Imse/wsgi.py
使用python manage.py runserver运行时,您的应用程序是否成功返回??尝试在代码的其他部分使用更多的print语句来调试执行。例如urls.py.