Django项目没有出现Apache和mod_wsgi

时间:2014-05-16 04:46:42

标签: django windows apache mod-wsgi web-deployment

我在windows xp service pack 3上安装了Apache和mod_wsgi,并将这些行添加到我的httpd.conf中:

WSGIScriptAlias / "C:/Documents and Settings/X/My Documents/Downloads/Foo/Foo/wsgi.py"
WSGIPythonPath "C:/Documents and Settings/X/My Documents/Downloads/Foo"

<Directory "C:/Documents and Settings/X/My Documents/Downloads/Foo/Foo">
<Files wsgi.py>
Require all granted
</Files>
</Directory>

但是当我在我的firefox上打开localhost时,它会显示Apache的It Works!消息,我该怎么办才能在localhost上运行我的项目?

编辑:

我检查并确认我的项目路径未包含在PYTHONPATH中。预计会将地址添加到WSGIPythonPath ...的行PYTHONPATH吗?

2 个答案:

答案 0 :(得分:1)

好吧,所以我的设置是在Linux中,所以这不是在Windows上测试,而是:

我没有看到你的LoadModule语句

文件: httpd.conf

LoadModule wsgi_module modules/mod_wsgi.so

如果没有它,modwsgi就无法工作。

另外:你的授权声明似乎有点可疑。 在wsgi configuration guide建议使用Directory指令允许访问mod_wsgi应用程序。

<Directory "C:/Documents and Settings/X/My Documents/Downloads/Foo/Foo/">
   Order allow,deny
   Allow from all
</Directory>

<强>最后:

让你的生活变得轻松。

  • 在工作模式下配置apache
  • 以守护进程模式配置mod_wsgi。
  • 利润

我可能会建议观看这个PyCon演讲Making Apache suck less for hosting Python web applications来自&#39; the-man格雷厄姆。我希望我在几年前就知道所有这些。

注意:要弄清楚你是否在mpm worker模式下有apache。

httpd.exe -V

寻找&#34;服务器MPM&#34;工人的价值。

答案 1 :(得分:-1)

Django在端口8000上运行,所以你要做两件事。首先,您需要通过进入控制台python manage.py runserver来运行服务器。其次,您需要将浏览器定向到localhost:8000

顺便说一句,您不需要Apache来运行简单的本地开发环境。 Django内置了自己的服务器,您可以利用它。