首先,我已经完成搜索并找到答案,但我仍然不明白以下内容。
我有两个 .co.uk 域,在我的 Debian 机器上设置了两个目录/home/site1/public_html/和/home/site2/public_html/- (示例、用户已设置等)。
因此,我将我的域指向我的盒子 IP 地址,并使用两个 DNS 条目(两者相同):
DNS Entry Type IP Address
@ A myip
www A myip
现在,对于站点可用配置,我创建了两个新的"file",两者的设置相同,但路径和信息针对各自的域进行了更改:
<VirtualHost *:80>
ServerAdmin my-email-address
ServerName www.site1.co.uk
ServerAlias site1.co.uk
DocumentRoot /home/site1/public_html/
</VirtualHost>
&
<VirtualHost *:80>
ServerAdmin my-email-address
ServerName www.site2.co.uk
ServerAlias site2.co.uk
DocumentRoot /home/site2/public_html/
</VirtualHost>
我a2ensite,重新加载apache。
现在,如果我访问 www.site1.co.uk 或 site1.co.uk ,它就可以正常工作。 如果我访问 www.site2.co.uk 它可以工作,但是 site2.co.uk 不起作用(找不到页面),我根本不知道为什么。
有人可以向我解释一下吗?我是否应该添加一些其他 DNS 条目、不同的配置等?
问候,
最佳答案
根据我的经验,您需要将 site2.co.uk 重定向到 www.site2.co.uk。
这是您在 Apache2 中应该如何做
RewriteCond %{HTTP_HOST} !^www\.site2\.co.uk [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/?(.*) http://www.site2.co.uk/$1 [L,R,NE]
欲了解更多信息,请参阅https://httpd.apache.org/docs/2.4/rewrite/remapping.html - 规范主机名。
关于linux - Apache2 站点可用配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15587048/