是否可以在同一个VirtualHost下配置多个Apache WSGIAlias?

时间:2013-06-17 21:46:41

标签: django apache mod-wsgi virtualhost django-wsgi

我目前在apache中有一个SSL配置文件来为我的django项目提供服务。目前,该设置看起来像:

<VirtualHost _default_:443>
#setup of paths to SSL file, default dirs, etc

#
# config for main django site
#
WSGIScriptAlias /v1 "C:/sites/mysite/v1/django.wsgi"
WSGIPassAuthorization On
<Directory "C:/sites/mysite/v1/myAppName">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>                                  

有效。但是,我想将登台/测试URL路径(但不同的代码目录)添加到同一服务器并重用现有证书。但是,如果我调整上面的代码并重新启动服务器,虽然对主django站点的调用继续有效,但是对我的/ demo / site的命中都会引发内部服务器错误:

<VirtualHost _default_:443>
#setup of paths to SSL file, default dirs, etc

#
# config for demo django site
#
WSGIScriptAlias /demo "C:/sites/demo/django.wsgi"
WSGIPassAuthorization On
<Directory "C:/sites/demo/myAppName">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

#
# config for main django site
#
WSGIScriptAlias /v1 "C:/sites/mysite/v1/django.wsgi"
WSGIPassAuthorization On
<Directory "C:/sites/mysite/v1/myAppName">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost> 

如何配置Apache以使两个不同的代码目录都响应,具体取决于对URL上传递的WSGIScriptAlias路径的更改?

1 个答案:

答案 0 :(得分:1)

是的,你可以。去看看:

虽然注意如何设置DJANGO_SETTINGS_MODULE。你可能会遇到这个问题。

尽管如此,请更新您的问题,说明您尝试访问的URL以及是否获得Apache 404页面或Django页面。

BTW,两个目录块都错误,因为它们使用了错误的目录。这些是您正在使用的实际配置,还是您为了保护真实价值而对其进行了篡改?