问题是我在本地主机的子域中安装了一个 django 项目,同时我有本地主机用于其他没有 Django 的东西。
每当我访问 a1.localhost 时,它都会显示我的 django 欢迎页面,但当我只想访问 localhost 时,它也会显示相同的 django 欢迎页面,而不是 index.html。
到目前为止,这是我所拥有的:
Hosts:
127.0.0.1 localhost
127.0.0.1 a1.localhost
vhosts.conf:
#-- a1.localhost
<VirtualHost *:80>
ServerName a1.localhost
WSGIScriptAlias / "C:/workspace/website1/apache/django.wsgi"
<Directory "C:/workspace/website1/apache">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
#-- localhost
<VirtualHost *:80>
ServerName localhost
DocumentRoot "C:/workspace/website1/django_project"
</VirtualHost>
django.wsgi
import os
import sys
path = "C:/workspace/website1/apache/django_project"
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'django_project.settings'
import django.core.handlers.wsgi
我想要实现的是在 localhost 中显示我的普通 index.html 文件,在 a1.localhost 中显示我的 django 项目。
谢谢。
最佳答案
我认为这里发生的是第一个虚拟主机接受到端口 80 的所有流量并将其重定向到 django 应用程序。第二个虚拟主机根本不接收流量。当它们是不同的端口时,整个事情都有效,因为在那种情况下,apache 知道哪个虚拟主机应该接收流量。
您可能需要在这些声明之前添加一行来设置虚拟主机命名,正如 Kay Zhu 提到的:
名称虚拟主机 *:80
有关详细信息,请参阅本文: http://digitalpbk.blogspot.com/2007/01/making-subdomains-on-localhost.html
关于python - 为什么我的 Django 项目同时显示在 subdomain 和 localhost 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13151482/