【发布时间】:2014-09-05 19:20:55
【问题描述】:
我尝试了 2 种方式来配置 wsgi 以在我的网站上使用 Django。 我的根项目文件在 /var/run/myApp. 这是我的 wsgi.py :
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'myApp.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
1.我安装了在 apache 上运行 Django 并使用 centos 作为操作系统所需的一切。我使用this 站点来运行 wsgi。我使用这个命令来设置我的服务器:
mod_wsgi-express setup-server wsgi.py --port=80 --user test --group test --server-root=/var/run/myApp/mod_wsgi-express-80
之后我运行这个命令,一切都很好:
/var/run/myApp/mod_wsgi-express-80/apachectl start
但是当我浏览我的网站时出现错误500 : Internal Server Error
2.我也已经尝试过另一种配置 apache conf 文件的方法,但我在 apache 的 error_log 中收到此错误:
" Target WSGI script not found or unable to stat: /run "
这就是我在 httpd.conf 中写的:
WSGIDaemonProcess mySite user=test group=test
WSGIProcessGroup mySite
<VirtualHost *:80>
WSGIScriptAlias / run/myApp/my_App/wsgi.py
<Directory run/myApp/my_App>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
什么问题?谢谢。
【问题讨论】:
-
看起来很明显:你的路径是
/var/run/myApp...,但你的httpd.conf只有run/myApp...。 -
我尝试 /var/run/myApp... 但没有成功
-
500:内部服务器错误意味着您的代码有问题。请尝试独立运行此应用程序。如果它工作正常,然后使用 apache 运行。还要检查
apache_error.log是否有 wsgi 脚本中的错误。 -
我在将我的应用程序放到 apache 上之前对其进行了测试,它工作正常。当我尝试方法 #1 时,日志文件中没有错误
-
检查 apache 错误日志。
标签: python django apache wsgi centos6