这可能听起来像一个愚蠢的问题,但它已经困扰了我一段时间,我无法找到任何答案。 我即将部署一个php + mysql Web应用程序到apache + linux生产服务器。我设置了一个虚拟主机,它指向我的主项目目录的公共文件夹。我的问题是:
- 如果我将项目目录的公共文件夹设置为默认的apache web root,而不是设置一个单独的虚拟主机,那会不同呢?
- 我应该限制访问或禁用默认的Web根目录,因为我没有使用它。如果是这样,怎么样?
提前感谢。
答案 0 :(得分:0)
希望你已经解决了你的问题。顺便说一句,我在这里发布答案,以帮助服务器管理员。所以将来任何服务器管理员都有这类问题,他们可以参考这个答案。
此情况无需设置默认Web根目录。根据Apache文档,如果在后续条目中找不到任何匹配项,则将获取第一个虚拟主机条目。请参阅以下虚拟主机条目
NameVirtualHost *
<VirtualHost *>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /home/example/public_html
ErrorLog /home/example/error.log
CustomLog /home/example/access.log combined
</VirtualHost>
<VirtualHost *>
ServerName www.example2.com
ServerAlias example2.com
DocumentRoot /home/example2/public_html
ErrorLog /home/example2/error.log
CustomLog /home/example2/access.log combined
</VirtualHost>
无需禁用默认Web根目录。如果找不到匹配项,Apache会自动将第一个条目作为默认Web根目录。