错误:在apache上运行django时找不到目标WSGI脚本或无法统计

时间:2012-02-28 14:32:59

标签: django apache django-templates django-views

我在apache上运行django时遇到问题:

的htdocs /博客/应用/网页/ urls.py:

url(r'^$', 'index', name="h_index"),
url(r'^about/$', 'about', name="h_about"),
url(r'^contact/$', 'contact', name="h_contact"),
url(r'^archive/$', 'archive', name="h_archive"),

的htdocs /博客/ urls.py

(r'^', include('apps.homepage.urls')),

django.wsgi:

import os
import os.path
import sys

sys.path.append('D:/Coding/xampp/htdocs')
sys.path.append('D:/Coding/xampp/htdocs/blog')

os.environ['DJANGO_SETTINGS_MODULE'] = 'blog.settings'

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

的httpd.conf:

Alias /static/ "D:/Coding/xampp/htdocs/blog/static/"
WSGIScriptAlias /blog/ "D:/Coding/xampp/htdocs/blog/django.wsgi"

当我运行“localhost / blog”时,它正在运行。但运行“localhost / blog / about /”或其他,这是错误:

[error] [client ::1] Target WSGI script not found or unable to stat:   .../htdocs/blog/django.wsgiabout, referer: http://localhost/blog/

2 个答案:

答案 0 :(得分:13)

请注意您的apache配置与mod_wsgi的WSGIScriptAlias的文档语法不符。

WSGIScriptAlias /blog/ "D:/Coding/xampp/htdocs/blog/django.wsgi"

应该是:

WSGIScriptAlias /blog "D:/Coding/xampp/htdocs/blog/django.wsgi"

(注意第二个标记之后没有斜杠,“/ blog”)

我刚刚解决了同样的问题并发现了这个帖子谷歌搜索。希望这有助于您和未来的用户。

了解更多信息:

答案 1 :(得分:-2)

我怀疑你没有加载wsgi模块。如果仔细查看您的错误消息,Apache会将其视为文件,并添加它所查找的wsgi脚本文件的名称 - 因此它找不到它。