<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
ServerAlias example.com
DocumentRoot /var/www/example/example
当我在浏览器上打开网站(如 www.example.com)时,它会列出 /var/www/example 目录下的所有文件,而不是页面!
但如果我使用ServerAlias www.example.com
它就可以正常工作,只是想知道可能是什么问题?
答案1
当 Apache httpd 在 HTTP/1.1Host
标头中收到不VirtualHost
存在或Host
根本没有标头的主机名时,它将提供VirtualHost
其配置中遇到的第一个主机名。
www.example.com
目前尚未在您的代码片段中配置,因此 Apache httpd 将提供VirtualHost
可能具有的默认服务DocumentRoot
/var/www/
。
如果你想知道细节,你应该阅读虚拟主机匹配的深入讨论。