apache2 - 动态子域名

apache2 - 动态子域名

我的服务器上有此虚拟主机配置。除了带有 www 的子域名外,其他一切都正常。当我访问带有 www 的 URL 时,出现 404 错误。我尝试使用 mod rewrite 解决此问题,但我不知道该怎么做。有人能帮助我吗?谢谢。

<VirtualHost *:80>
    ServerAdmin mail@localhost
    ServerName domain.com
    ServerAlias www.domain.com
    UseCanonicalName Off
    VirtualDocumentRoot /var/www/domain.com/www/
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin mail@localhost
    ServerName *.domain.com
    ServerAlias *.domain.com
    UseCanonicalName Off
    VirtualDocumentRoot /var/www/domain.com/sub/%-3+
</VirtualHost>

答案1

尝试使用DocumentRoot而不是VirtualDocumentRootfor www.domain.com

答案2

我认为您不能在 ServerName 上使用通配符(与 ServerAlias 相反),也许这会造成问题?请尝试ServerName domain.com在通配符虚拟主机上使用通配符。

另外,您可能应该将 404 错误发布到您的 error_log 中。报告缺失的实际路径可能有助于了解 apache 如何解析请求。

相关内容