【发布时间】:2024-01-05 05:53:01
【问题描述】:
我有一个网站,localdjangosite.com,我已经有一个 django 应用程序在该域上运行,网址为 localdjangosite.com/site1/。为此,我在 apache sites-available 目录中设置了一个虚拟主机,如下所示,我也使用了 mod_wsgi。
WSGIScriptAlias /site1 /path/to/the/django/codebase/wsgi.py
<Directory /path/to/the/django/codebase/>
Require all granted
</Directory>
这样,site1 运行良好。
现在我想在同一域下再拥有一个站点,例如localdjangosite.com/site2/。当我尝试像下面这样配置 apache 时,我遇到了 page not found 错误。
WSGIScriptAlias /site2 /path/to/the/django/codebase/for/site2/wsgi.py
<Directory /path/to/the/django/codebase/for/site2/>
Require all granted
</Directory>
当我这样配置并访问 url localdjangosite.com/site2/ 时,它显示 Page not found 错误并显示 site1 而不是 site2 的 url 配置。这里site1 和site2 确实是两个不同的django 项目,它们内部有不同的应用程序和服务于不同的目的。
所以我真的不明白发生了什么?怎么了?
有人可以帮我理解它并在同一域下托管两个或多个 django 项目吗?
【问题讨论】:
-
您是否为这两个应用程序设置了正确的
DNS条目?如果可能,更喜欢子域site1.localdjangosite.com和site2.localdjangosite.com并且不要忘记将*.localdjangosite.com添加到ALLOWED_HOSTS中settings.py这两个应用程序 -
@cizario,是的,我可以在我的开发机器上试一试,没关系。但是在生产中我不能有子域,这是一个问题。