我有几个IP,我正在尝试配置在Apache2中。我试过四处寻找,但似乎要求太多了。
我想将每个IP的直接请求(例如http://155.155.155.100)路由到一个专用的DocumentRoot (例如/www/155.155.155.00/)。
而解析到同一个IP的域(155.155.155.100)将有一个单独的DocumentRoot。到目前为止,Apache在IP的路由方面没有问题,但是它不喜欢在域之间共享它们。
到目前为止,我的设置( IP和域路由都不工作到/www/155.155.101-它们不是分开的):
NameVirtualHost 155.155.155.100
NameVirtualHost 155.155.155.101
NameVirtualHost 155.155.155.102
NameVirtualHost 155.155.155.103
<VirtualHost 155.155.155.101>
DocumentRoot /www/155.155.155.101
</VirtualHost>
<VirtualHost 155.155.155.101>
ServerName www.domain1.com
ServerAlias www.domain1.com
DocumentRoot /www/domain1.com
</VirtualHost>我会感谢你的帮助!
发布于 2010-07-02 20:54:53
未经测试。我假设您的主机名都在一个IP上;如果不是,您可以使用单个NameVirtualHost *,并在任何地方的<VirtualHost *>上匹配。
NameVirtualHost 155.155.155.100:80
NameVirtualHost 155.155.155.101:80
NameVirtualHost 155.155.155.102:80
NameVirtualHost 155.155.155.103:80
<VirtualHost 155.155.155.100:80>
ServerName 155.155.155.100
DocumentRoot /www/155.155.155.100
</VirtualHost>
<VirtualHost 155.155.155.100:80>
ServerName www.domain0.com
DocumentRoot /www/domain0.com
</VirtualHost>
<VirtualHost 155.155.155.101:80>
ServerName 155.155.155.101
DocumentRoot /www/155.155.155.101
</VirtualHost>
<VirtualHost 155.155.155.101:80>
ServerName www.domain1.com
DocumentRoot /www/domain1.com
</VirtualHost>据我所知,您的错误是没有给第一个vhost一个ServerName。
Apache使用了接收请求的IP的反向,我希望它是www.domain1.com;因此,您的第二个虚拟主机是隐藏的。
发布于 2010-07-03 13:04:25
问题是你的第一个IP只有一节,
<VirtualHost 155.155.155.101>
DocumentRoot /www/155.155.155.101
</VirtualHost>不包括ServerName或ServerAlias,而域后面的则包含。Apache将尝试将传入连接匹配到匹配的第一个VirtualHost配置节。由于使用解析到IP的域的连接将与IP匹配,无需任何进一步的细化(ServerName或ServerAlias),它将被用于处理连接。
因此,您应该确保每个VirtualHost配置节都有一个ServerName或ServerAlias选项以及DocumentRoot,或者确保您的更具体的VirtualHost配置节在配置文件中首先出现在不太具体的配置文件中(即IP地址本身有或没有ServerName选项)。
因此,下列工作应如你所料:
NameVirtualHost 155.155.155.100
NameVirtualHost 155.155.155.101
NameVirtualHost 155.155.155.102
NameVirtualHost 155.155.155.103
<VirtualHost 155.155.155.101>
ServerName www.domain1.com
ServerAlias www.domain1.com
DocumentRoot /www/domain1.com
</VirtualHost>
<VirtualHost 155.155.155.101>
DocumentRoot /www/155.155.155.101
</VirtualHost>https://serverfault.com/questions/157116
复制相似问题