![Apache 通配符子域名不断加载页面](https://linux22.com/image/804638/Apache%20%E9%80%9A%E9%85%8D%E7%AC%A6%E5%AD%90%E5%9F%9F%E5%90%8D%E4%B8%8D%E6%96%AD%E5%8A%A0%E8%BD%BD%E9%A1%B5%E9%9D%A2.png)
我使用的是 Hostmonster VPS。我已将 A 记录 *.example.com 指向我的服务器的 IP。以下是服务器自动生成的主要虚拟主机:
<VirtualHost 162.144.48.232:80>
ServerAdmin [email protected]
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/example.com combined
CustomLog /usr/local/apache/domlogs/example.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User <USER> # Needed for Cpanel::ApacheConf
UserDir enabled <USER>
<IfModule mod_suphp.c>
suPHP_UserGroup <USER> <USER>
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup <USER> <USER>
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RUidGid <USER> <USER>
</IfModule>
ScriptAlias /cgi-bin/ /home/<USER>/public_html/cgi-bin/
</VirtualHost>
我可以将此内容附加到包含在此虚拟主机定义之后的单独文件中。我有以下内容:
DocumentRoot "/home/<USER>/public_html/subdomains/"
<Directory "/home/<USER>/public_html/subdomains/">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<VirtualHost 162.144.48.232:80>
ServerAlias *.example.com
UseCanonicalName Off
VirtualDocumentRoot /home/<USER>/public_html/subdomains/%1
</VirtualHost>
现在,我只需将一个测试“index.html”放入其中subdomains/test/
。当我访问 example.com/subdomains/test/ 时,它工作正常,但尝试 test.example.com 时,index.html 文件会重复加载。相同的内容不断重复,页面永远不会停止加载。
有什么迹象表明为什么会发生这种情况?
答案1
我从主 VirtualHost 中删除了这两行之后,问题就解决了:
CustomLog /usr/local/apache/domlogs/example.com combined
CustomLog /usr/local/apache/domlogs/example.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."