如何使用.htaccess重写以重定向具有相同名称的所有文件?

时间:2017-05-31 18:39:22

标签: php .htaccess redirect mod-rewrite

我的服务器周围散布着一堆同名的文件(让我们称之为abc.html)。我希望将每个abc.html重定向到一个页面(让我们说/woo/xyz.html)。有没有办法可以将所有这些页面重定向到一个页面,而无需写出每一页?提前谢谢!

2 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题,以下规则应该有效:

RewriteRule ^.*/abc\.html$ /woo/xyz.html [L]

它会将任何请求重定向到文件abc.html(即使在子文件夹中)到/woo/xyz.html

答案 1 :(得分:0)

除非您已经将mod_rewrite用于其他重写/重定向,否则最好使用mod_alias RedirectMatch。例如,在根.htaccess文件中:

RedirectMatch /abc\.html$ /woo/xyz.html

匹配结束 /abc.html的任何网址(包括文档根目录和任何子目录)。源URL路径是正则表达式。

这是302(临时)重定向。