我想知道是否可以将vhost_alias模块与重写规则结合使用。所以在我的VirtualHost中我有这个:
VirtualDocumentRoot /var/www/%2+/%1
例如,sub.mydomain.com将指向/var/www/mydomain.com/sub/
但我想检查文件夹是否存在,以避免在我尝试访问虚假子域时出现404错误。
所以我试着这样做
RewriteCond /var/www/%2+/%1 !-d
RewriteRule ^.*$ www.mydomain.com
但它不起作用。有什么想法吗?
答案 0 :(得分:0)
找到另一种方法来做我想要的事情:
RewriteRule ^(.*)$ %{HTTP_HOST}/$1
RewriteRule ^(.*)\.([^/.]*)\.([^/.]*)\/(.*) /home/vhosts/$2.$3/$1$4 [E=VIRTUAL_ROOT:/home/vhosts/$2.$3/$1]
RewriteCond %{ENV:VIRTUAL_ROOT} !-d
RewriteRule .* http://www.mydomain.com [L]