我在sites-enabled文件夹中使用多个vhost运行Apache2,每个vhost看起来都有点像这样:
<VirtualHost *:80>
ServerName site1.com
ServerAlias www.site1.com
DocumentRoot /home/sites/site1/www/
<Directory /home/sites/site/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>
<Directory /home/sites/mainsite/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>
# Provide default favicon.ico and robots.txt using rewrite
RewriteOptions Inherit
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteRule ^/(robots\.txt|favicon\.ico)$ /mainsite_alias$0 [PT,NC,L]
</VirtualHost>重写代码对所有vhost都是通用的(提供了默认的folicon.ico/robots.txt),但将此代码放入httpd.conf似乎没有任何效果-重写日志没有显示任何内容。
如何在不复制代码的情况下使此代码对所有vhost通用?
或者--有没有更好的方法来获得默认的图标?
谢谢
发布于 2009-07-18 19:08:18
你可以试试AliasMatch
AliasMatch ^/(robots\.txt|favicon.ico)$ /home/sites/site1/www/mainsite_alias$0发布于 2009-10-07 02:21:25
我正在用这个
<VirtualHost *:80>
ServerAdmin email_at_isp
DocumentRoot "C:/apache/htdocs"
</VirtualHost>
<VirtualHost *:80>
ServerAdmin admin_at_server_one.com
DocumentRoot "C:/apache/htdocs/server_one.com"
ServerName server_one.com
ErrorLog "logs/server_one.com-error.log"
CustomLog "logs/server_one.com-access.log" common
</VirtualHost>我一直在.htaccess的根目录C:/apache/htdocs中重写脚本,我希望它能有所帮助,如果不是很有趣的话。LOL
https://stackoverflow.com/questions/1134170
复制相似问题