mod_rewrite 404s到另一个域,保持路径

时间:2011-07-21 17:15:20

标签: apache mod-rewrite

这似乎应该有效:

RewriteEngine On
RewriteCond %{REQUEST_URI} !-U
RewriteRule ^.*$ http://myotherdomain.com/$ [R=301]

但事实上,这根本不会导致任何重写。我只是想抓住这个域上的任何404并将它们转发到另一个域(包括完整路径和查询字符串)。

1 个答案:

答案 0 :(得分:1)

有趣的想法......但不幸的是,实施是错误的。实际上,这个有效:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) http://myotherdomain.com/$1 [R=301,L]
  1. 您没有捕获组 - 您有.*但未被“捕获”(.*)因此以后无法通过$1引用。

    < / LI>
  2. 您没有后退引用(我们的情况为$1) - 只有$符号。