我已经阅读了几个教程,但我不能这样做。我的apache配置文件看起来像这样(底部有重要的几行):
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
WSGIScriptAlias /wsgi/ /neuroling/projects/lnldb/lnldbproject/lnldb.wsgi
<Directory /neuroling/projects/lnldb/lnldbproject/>
Order allow,deny
Allow from all
</Directory>
我的lnldb.wsgi文件如下所示:
import os
import sys
path = '/neuroling/projects/lnldb'
if path not in sys.path:
sys.path.append(path)
path = '/neuroling/projects/lnldb/lnldbproject'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'lnldbproject.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
现在,如果我带着我的broswer前往[MY_IP_ADDRESS] / wsgi,我会看到:
使用lnldbproject.urls中定义的URLconf,Django按以下顺序尝试了这些URL模式: ^管理员/ 当前的网址与其中任何一个都不匹配。
很公道,我还没有给它一个URL。但至少lnldb.wsgi被调用了。
但是我想看管理员,所以我去[MY_IP_ADDRESS] / wsgi / admin,我得到:
未找到 在此服务器上找不到请求的URL / wsgi / admin。
有人可以指出我做错了什么,我相信这很简单......
非常感谢。
答案 0 :(得分:2)
变化:
WSGIScriptAlias /wsgi/ /neuroling/projects/lnldb/lnldbproject/lnldb.wsgi
为:
WSGIScriptAlias /wsgi /neuroling/projects/lnldb/lnldbproject/lnldb.wsgi
在子URL处安装时,您不应该在挂载点上有一个尾部斜杠。