实际上有两个问题。
一是,如何让 RewriteCond+RewriteRule 将 domain2/folder1 更改为 domain1/folder1
实际上我想要的是,任何试图访问不是 domain1 的文件夹 1 的域都会切换到 domain1。例如 domain2.com/domain1/foo -> domain1.com/domain1/foo 以及 domain3.com/domain1/foo -> domain1.com/domain1/foo
这是我尝试过的
RewriteCond %{HTTP_HOST} !^domain1\.com$ [NC]
RewriteCond %{REQUEST_URI} ^/folder1/
RewriteRule ^/folder1/(.*)$ http://domain1.com/folder1/$1 [L,R=permanent]
但那不管用。接下来我尝试了一些更简单的规则,看看能否缩小问题范围。
RewriteCond ${HTTP_HOST} domain2\.com [NC]
RewriteRule ^(.*)$ http://google.com/ [L]
我认为这会使对 domain2.com 的任何请求转到 google.com,因此我尝试了,http://domain2.com/foo
但我得到的是 domain2.com/foo 而不是 google.com 如果我转到 ,http://domain2.com
我得到的是 google。为什么我转到 却到不了那里http://domain2.com/foo
?
我对 mod_rewrite 有哪些不理解的地方?
答案1
没关系。上述规则有效。问题是我实际上有一个“folder1”,里面还有另一个 .htaccess 文件。哎呀!