我在Debian服务器上的Apache2中有两个虚拟主机设置子域。 ip是104.130.6.104。在浏览器中输入ip后,apache将返回blog.goaltilt.com的文件。我希望它返回www.goaltilt.com的文件。我找了一个小时的答案。有人可以帮我理解如何强制apache解析ip到我选择的子域吗?
goaltilt.com.conf是:
<VirtualHost *:80>
ServerName goaltilt.com
ServerAlias www.goaltilt.com
ServerAdmin robert@goaltilt.com
DocumentRoot /var/www/goaltilt.com/public_html
</VirtualHost>
blog.goaltilt.com.conf是:
<VirtualHost *:80>
ServerName blog.goaltilt.com
ServerAdmin robert@goaltilt.com
DocumentRoot /var/www/blog.goaltilt.com/public_html
</VirtualHost>
答案 0 :(得分:1)
我发现我已经禁用了000-default.conf文件,因此服务器正在解析为可用站点中的第一个虚拟主机。我修改了000-default.conf文件以确保它进入主站点然后启用它并重新启动apache以使其运行。现在,000-default.conf文件将104.130.6.104 IP解析为正确的虚拟主机。谢谢你的帮助艾文。您的回答帮助我找出了文档中要查找的内容。
答案 1 :(得分:0)
通常应使用DNS映射主机名,因此根据您的注释,您使用的是IP而不是名称。既然如此,您需要修改您的主机文件,或者如果您恰好是网络管理员,则可以添加cname
。
在Windows上,您可以修改文件C:\Windows\System32\drivers\etc\hosts
并将以下内容添加到文件中:
192.168.20.24 blog.goaltilt.com
然后当您在该Windows计算机http://blog.goaltilt.com
上进入浏览器时,它会将该主机名发送到您的Apache服务器(上面的示例显示&#39; 192.168.20.24&#39;作为服务器地址)和妥善解决。
在Linux上,您需要修改/etc/hosts
文件并使用相同的格式。