我有两个Django应用程序(比如,app1
和app2
)使用Apache mod_wsgi托管在同一台机器上。这两个应用程序托管在两个不同的环境中:
http://www.example.com/app1/app1/
和http://www.example.com/app2/app2/
。http://www.domain.com/
形式访问。这链接到上述两个应用(现在托管在单个虚拟机上)http://www.domain.com/id1/
和http://www.domain.com/id2/
URLconf文件如下所示:
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^app1/', include('project.app1.urls')),
)
问题是,此URL配置在环境1
中有效,但在环境2
中无效。现在,如果我在环境2
中执行 crazy ,例如
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^app1/app1/app1/', include('project.app1.urls')),
(r'^app1/app1/', include('project.app1.urls')),
(r'^app1/', include('project.app1.urls')),
)
然后应用程序工作。在环境中2
,该应用的访问权限为http://www.domain.com/id1/app1/app1/
。
我无法理解为什么我们需要在URL中多次使用前缀app1
。换句话说,为什么(如何)这是有效的。
有人可以澄清一下吗?另请注意,所有配置都需要在虚拟机上完成。我无法访问代理服务器。