Apache的默认主机
问题描述:
我的Apache2,它的文档根目录结构为:Apache的默认主机
/var/www/html
---index.html
---example.com
------/index.html
我想my-site.com所有请求指向example.com/index.html
和所有其他请求送达from /var/www/html
。
这里是我的配置:
<VirtualHost _default_:80>
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
ServerName my-site.com
DocumentRoot /var/www/html/example.com
</VirtualHost>
但是,所有的请求都来自Apache的文档根目录服务。
感谢您的任何帮助。
答
在第二个虚拟主机之前,您需要在配置中的某个位置使用NameVirtualHost指令。
<VirtualHost _default_:80>
DocumentRoot /var/www/html
</VirtualHost>
NameVirtualHost *:80
<VirtualHost *:80>
ServerName my-site.com
DocumentRoot /var/www/html/example.com
</VirtualHost>
+0
谢谢,但Apache仍然提供来自/ var/www/html的所有请求 – 2013-04-11 05:03:34
+0
修正thnx需要将NameVirtualHost *:80置于虚拟主机声明的顶部。 – 2013-04-11 09:16:24
我相信Apache有一个文档根的概念,我可能是错的。如果你希望my-site.com的东西来自其子目录,而不是为mysite创建一个别名,那么http:// localhost:80/mysite会为你提供mysite的内容,而http:// localhost: 80 /将从“var/www/html”目录中提取。 HTH – 2013-04-10 20:39:51