Apache 虚拟主机配置

Apache VirtualHost configure

我配置虚拟主机后,我的apache文档根目录变成了虚拟主机的文档根目录,我想知道为什么。

这是我的 httpd-vhosts.conf:

<VirtualHost *:80> 
   ServerName myapp.zend 
   DocumentRoot /opt/lampp/htdocs/php_zend_projects/myapp
   <Directory /opt/lampp/htdocs/php_zend_projects/myapp/public> 
      DirectoryIndex index.php 
      AllowOverride All 
      Order allow,deny 
      Allow from all 
      <IfModule mod_authz_core.c> 
         Require all granted 
      </IfModule> 
   </Directory> 
</VirtualHost>

在我重新启动 apache 服务器后,localhost 页面更改为 /opt/lampp/htdocs/php_zend_projects/myapp

的索引

http://gwjyhs.com/t6/702/1556725814x2728329017.png

但它应该是 xampp 的默认页面,如下所示:

http://gwjyhs.com/t6/702/1556726269x2728278877.png

如果启用虚拟主机,则必须添加如下所示的条目:

<VirtualHost *:80>
    DocumentRoot "F:/Dev/xampp/htdocs"
    ServerName localhost
</VirtualHost>

注意:将路径更改为适合您的路径。

重新启动网络服务器,它应该像以前一样工作。

这背后的原因可以在 httpd-vhosts.conf 顶部的评论中找到:

The first VirtualHost section is used for all requests that do not match a ##ServerName or ##ServerAlias in any block.

这意味着当您输入 localhost 时,它会回退到您的 myapp.zend 虚拟主机,因为它(可能)是第一个虚拟主机部分。