我有 3 个子域网站。它们是 subdomain1.mydomain.com、subdomain2.mydomain.com、subdomain3.mydomain.com。我已将它们指向外部 IP 地址。bind 正常,dig 出现错误,Apache2 重新加载正常
1.) 如果我设置以下内容,我只能看到按字母顺序排列的第一个。
NameVirtualHost *:80
<VirtualHost *:80>
ServerName subdomain1.mydomain.com
...
<VirtualHost *:80>
ServerName subdomain2.mydomain.com
...
2.) 如果我设置了以下内容,则会找不到文件。Apache2 重新加载成功。
NameVirtualHost mydomain.com:80
<VirtualHost mydomain.com:80>
ServerName subdomain1.mydomain.com
...
<VirtualHost mydomain.com:80>
ServerName subdomain2.mydomain.com
请帮忙!我还应该做什么。
答案1
你应该有以下内容:
NameVirtualHost IP:80
<VirtualHost IP:80>
ServerName subdomain1.mydomain.com
...
</VirtualHost>
<VirtualHost IP:80>
ServerName subdomain2.mydomain.com
...
</VirtualHost>
* 更新 *
答案2
看http://wiki.apache.org/httpd/CommonMisconfigurations
您的第一个代码示例是正确的。您应该使用通配符,例如NameVirtualHost *:80
和<VirtualHost *:80>
,否则您无法从同一台机器可靠地测试它。
从您的评论中:
我的意思是我用另外一个IP地址从外网浏览。
您必须使用 DNS 名称(或 hosts 文件条目,或定义 HOST 标头)进行测试