繁体   English   中英

Apache 2 + mod_wsgi + WSGIScriptAlias

[英]Apache 2 + mod_wsgi + WSGIScriptAlias

我目前正在研究Python和Django是否适合我将要开展的项目(到目前为止它看起来不错)。 作为测试的一种手段,我想使用mod_wsgi在实际服务器(ubuntu上的apache2)上运行python,但我无法使其工作。 这是我的httpd.conf(位于/etc/apache2/httpd.conf):

WSGIScriptAlias /test/tc-test/ /var/www/stage/hello/tc-test/django.wsgi
WSGIPythonPath /var/www/stage/test/tc-test/

<Directory /var/www/stage/test/tc-test>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

我的django.wsgi看起来如下:

import os
import sys

sys.path.append('/var/www/stage/test/tc-test')

os_environment['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()

该目录的URL将是http://stage.website.com/test/tc-test

奇怪的是,当我重新启动apache服务器时,我不断收到500个内部服务器错误。 不仅适用于该子目录,还适用于服务器上的所有其他子目录。 我查看了apache错误日志,但由于某种原因,根本没有记录任何错误。 我设法将罪魁祸首缩小到WSGIScriptAlias和WSGIPythonPath:当我删除它们时,500内部服务器错误消失,当我添加其中任何一个时,它们再次出现。 我已经确认mod_wsgi的工作方式应该是这样,而且我可能看起来非常简单。 我只是无法找出什么。 对此有何帮助?

尝试:

WSGIScriptAlias /test/tc-test /var/www/stage/hello/tc-test/django.wsgi

你不应该在第一个参数上有尾随斜杠。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM