Apache 基于域的.htaccess中的条件重写

Apache 基于域的.htaccess中的条件重写,apache,.htaccess,mod-rewrite,url-rewriting,Apache,.htaccess,Mod Rewrite,Url Rewriting,我曾尝试使用以前的建议来解决类似的问题,但没有成功。可能是我当前使用的.htaccess文件太复杂了,这就是我的问题所在 Domain1位于根目录Domain1的子文件夹中。在我的根文件夹中,我有以下.htaccess文件,可以正常工作: RewriteCond %{HTTP_HOST} ^(www.)?domain1.me.uk$ RewriteCond %{REQUEST_URI} !^/domain1/ RewriteCond %{REQUEST_FILENAME} !-f Rewri

我曾尝试使用以前的建议来解决类似的问题,但没有成功。可能是我当前使用的.htaccess文件太复杂了,这就是我的问题所在

Domain1位于根目录Domain1的子文件夹中。在我的根文件夹中,我有以下.htaccess文件,可以正常工作:

RewriteCond %{HTTP_HOST} ^(www.)?domain1.me.uk$

RewriteCond %{REQUEST_URI} !^/domain1/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /domain1/$1

RewriteCond %{HTTP_HOST} ^(www.)?domain1.me.uk$
RewriteRule ^(/)?$ domain1/index.html [L]
RewriteCond %{HTTP_HOST} ^domain1.me.uk$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain1.me.uk$
RewriteRule ^/?$ "http\:\/\/domain1\.me\.uk" [R=301,L]
Domain2位于root的另一个子文件夹中,如果Domain1.me.uk是URL,则我希望.htaccess有条件地重写到Domain1,如果Domain2.me.uk是URL,则重写到Domain2


非常感谢您的帮助。

要在url中包含domain1.me.uk时重写到/domain1文件夹,您可以使用:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?domain1.me.uk$
 RewriteCond %{REQUEST_URI} !^/domain1/
 RewriteRule ^(.*)$ /domain1/$1 [NC,L]

那太好了,而且简单多了!当我把另一个重写放在下面时,两个都能工作。非常感谢。