为什么这个虚拟主机文件不能正常工作?

为什么这个虚拟主机文件不能正常工作?

我在 sites-available 和 sites-enabled 中都有这个虚拟主机文件。我的域名正在重定向回这里,但它转到了错误的 /var/www/dir/prod。我的域名现在是 domain.com,我刚刚在这里更改了它。有人能告诉我为什么它没有转到正确的目录吗?
<VirtualHost *:8080>
ServerAdmin webmaster@localhost
ServerName dev.domain.com
ServerAlias test.domain.com

    DocumentRoot /var/www/sites/slap/dev
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/sites/slap/dev>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    #ErrorLog /var/log/apache2/error.log
    ErrorLog /dev/null

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /dev/null combined

</VirtualHost>

<VirtualHost *:8080>
ServerAdmin webmaster@localhost
ServerName domain.com
ServerAlias www.domain.com

    DocumentRoot /var/www/sites/slap/prod
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/sites/slap/prod>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    #ErrorLog /var/log/apache2/error.log
    ErrorLog /dev/null

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /dev/null combined

</VirtualHost>

答案1

你重启过 Apache 吗?错误日志里有写什么吗?

答案2

httpd.conf 中是否有针对端口 8080 的 Listen 语句?如果没有,请解释一下(并且日志不会显示任何内容)

答案3

尝试以下命令:

httpd -t -D DUMP_VHOSTS

(或者可能取决于 apache 的打包方式。您使用的 sites-enabled 建议使用 debian 或 ubuntu):

APACHE_RUN_USER=www-data APACHE_RUN_GROUP=www-data apache2 -t -D DUMP_VHOSTS

这将显示虚拟主机的定义和重叠方式(哪个虚拟主机属于哪个 namevirtualhost 配置)。这可能会向您显示哪里出了问题。

相关内容