2012-10-22 72 views
0

我试图在Windows 7上的mod_wsgi Apache 2.2的安装的Django 1.3应用程序添加以下行的httpd.conf错误尝试配置Apache和Django的

Listen 8080 
... 

LoadModule wsgi_module modules/mod_wsgi.so 

Alias /static/ "C:/Users/.../my_app/my_app/static/" 

<Directory "C:/Users/.../my_app/my_app/static"> 
    Order deny,allow 
    Allow from all 
<Directory> 

WSGIScriptAlias/"C:/Users/.../my_app/my_app/wsgi.py" 
WSGIPythonPath "C:/Users/.../my_app/" 

<Directory "C:/Users/.../my_app/my_app"> 
    <Files wsgi.py> 
    Order allow,deny 
    Allow from all 
    <Files> 
<Directory> 

wsgi.py

import os 
import sys 

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'my_app.settings') 

import django.core.handlers.wsgi 

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

path = 'C:/Users/.../my_app/my_app' 
if path not in sys.path: 
    sys.path.append(path) 

wsgi.py文件是在同一文件夹中settings.pyurls.py

当我去localhost:8080它说: 未找到所请求的网址/在此服务器上未找到

注:我完全新的Apache的,我不知道我错过了什么,有些文档显示的方式来配置它和其他表现出完全不同的方式来做同样的事情。

对此配置有什么问题的任何想法。

+0

服务器上还有其他什么,以及为什么你在8080端口上而不是80上。听起来有点奇怪,你在80以外的端口上监听,而你没有使用VirtualHost。所以不知道问题是你已经有一个80端口的VirtualHost,8080端口没有VirtualHost,所以当访问端口8080时,它将回退到端口80 VirtualHost。关于服务器上还运行着什么以及是否有任何VirtualHost定义,请修改您的问题。 –

+0

你可以扔apahce错误日志,这将是很大的帮助? –

回答

0

由于您使用的是Windows 7,我的第一个猜测是权限。任何通过“用户”文件夹将有奇怪的权限问题。当我在Windows本地开发任何东西时,我总是将项目放在根文件夹中,如“C:/ projects/django/my_project /”。此外,请确保你看看Windows防火墙设置(如果有的话,调试,对于莫禁用Windows防火墙,或者更好的是添加防火墙规则):

http://www.howtogeek.com/112564/how-to-create-advanced-firewall-rules-in-the-windows-firewall/

老实说,我的麻烦的一半Windows确保项目和开发设置不在核心结构之内。不要将服务安装到“C:/ Program Files”或在“C:/ Users”中创建项目文件夹。