为什么 apache 总是重定向到默认的 VirtualHost?

为什么 apache 总是重定向到默认的 VirtualHost?

我在 centOS7.6 上使用 apache 2.4,我想有一个子域和主域,它们都显示不同的内容。我配置了两个 VirtualHosts,它们都位于 /etc/httpd/conf.d/ 中的不同文件中

例如.com.conf

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html/example.com/
</VirtualHost>

和 subdomain.example.com.conf

<VirtualHost *:80>
    ServerName subdomain.example.com
    DocumentRoot /var/www/html/subdomain.example.com/
</VirtualHost>

问题是,无论我访问哪个域,我都会从默认 VirtualHost(按字母顺序排列的第一个)获取文件。我尝试将 /var/www/ 的权限更改为 777、禁用 selinux、将操作系统切换到 fedora30 以及一些小操作。

主httpd.conf:

ServerRoot "/etc/httpd"

Listen 80

Include conf.modules.d/*.conf

ServerAdmin [email protected]

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "/var/www/html"

<Directory "/var/www">
    AllowOverride None
    Require all granted
</Directory>

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.php
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error_log"

LogLevel warn

<IfModule log_config_module>

    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %v" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    CustomLog "logs/access_log" combined
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig /etc/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

AddDefaultCharset UTF-8

<IfModule mime_magic_module>
    MIMEMagicFile conf/magic
</IfModule>

EnableSendfile on
Include conf.d/*.conf

相关内容