仅将子域重定向到根

时间:2017-06-20 17:26:17

标签: .htaccess mod-rewrite

所以我有这个网站:www.example.com,过去会将客户重定向到www.example.com/subdir

现在我更新了整个网站,子目录不再存在,我希望主域名成为根目录。问题是许多客户端已经缓存了包含子域的URL,因此我需要一个重定向规则来将www.example.com/subdir路由到www.example.com。

我试过了:

RewriteRule ^subdir/(.*)$ $1

如果我使用最后一个斜杠输入www.example.com/subdir/

但如果我访问www.example.com/subdir 而没有最后一次斜杠,则无法完成此任务。

我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:3)

将您的规则更改为:

RewriteRule ^subdir(?:/(.*))?$ /$1 [L,NC,R=301,NE]

在此处使用R=301非常重要,这样所有客户端和搜索引擎最终都会转移到新网址,而不是继续使用相同内容的重复网址(糟糕的搜索引擎优化)。