好的,我的服务器上有多个域。它们有 vhost conf 文件。我的主要域...www.example.com有配置文件,如..
ServerAdmin [email protected]
ServerName example.net
ServerAlias www.example.net
DocumentRoot /var/www/example.net/public_html
我有 2 个文件,80 和 443 用于 SSL
现在的问题是这样的..当我在浏览器中输入www.example.com它将我带到域的根文件夹,而不是路径中的站点文件夹根目录。
当我在浏览器中输入 example.com 时,它会带我到正确的根目录。我在任何地方都找不到这个问题,也不知道该如何解决,我已经尝试了所有能想到的方法。
答案1
您可能有另一个VirtualHost
与 匹配www.example.com
且出现在配置中的配置。将改为使用该配置。
一个非常常见的错误是省略ServerName
默认(或任何)虚拟主机。如果没有ServerName
指定,服务器会尝试从服务器的 IP 地址推断它,这可能会导致www.example.com
,使它不直观地成为第一个匹配的虚拟主机,而不是实际将其作为ServerName
或 的虚拟主机ServerAlias
。
答案2
需要验证域 example.com 的虚拟主机配置。
服务器名称 example.com
服务器别名 www.example.com
文件根目录 /var/www/example.com/public_html
答案3
这可能是由于 conf 的文件名。添加 0-{yourfile}.conf、1-{yourfile}.conf 等。只需在每个文件中添加订单号的前缀。Apache 就是这样执行的。