为什么我不能在我的 apache 中设置两个 vhost?

为什么我不能在我的 apache 中设置两个 vhost?

Apache 安装在我的 Debian 上,我想绑定两个具有不同目录的域名。

cat  /etc/hosts
127.0.0.1  hwy.local  www.hwy.local  
127.0.0.1  test.app   www.test.app

两个域名都与127.0.0.1绑定。

猫/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
    ServerName www.hwy.local
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ErrorLog ${APACHE_LOG_DIR}/error_hwy.log
    CustomLog ${APACHE_LOG_DIR}/access_hwy.log combined
        <Directory /var/www/html>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
        </Directory>
</VirtualHost>
<VirtualHost *:80>

ServerName www.test.app
ServerAdmin webmaster@localhost
DocumentRoot  /home/debian9/app
ErrorLog ${APACHE_LOG_DIR}/error_app.log
CustomLog ${APACHE_LOG_DIR}/access_app.log combined
    <Directory /home/debian9/app>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

test.html 在 和 中/var/www/html保存同一个文件/home/debian9/app

<p>it is a test</p>

为什么www.hwy.local/test.html能打开,www.test.app 就出现错误。

This site can’t be reached 

答案1

问题不在于 Apache,而在于您的/etc/hosts文件。

每个 IP 地址在 hosts 文件中只能有一行。因此,您的 hosts 文件应如下所示:

127.0.0.1  hwy.local  www.hwy.local  test.app   www.test.app

127.0.0.1 的所有条目都位于同一行上。

相关内容