我在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/
答案 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脚本文件的名称 - 因此它找不到它。