Htaccess重定向匹配

时间:2016-07-26 07:01:19

标签: apache .htaccess mod-rewrite

我试图做一些.htaccess重定向,删除"在线"来自:

site.com/online/producator-pinguin.htmlsite.com/producator-pinguin.html

我有以下.htaccess规则:

RewriteEngine On
RewriteRule ^online/producator-(.*).html$ /producator-$1.html [L,R=301]

这样可行,但问题是它也匹配:

site.com/online/producator-pinguin/culoare-rosu.html

在示例中," pinguin"是一个品牌名称,所以规则不能为pinguin硬编码,它应该适用于任何单词。 (producator-x,producato-y,...)

如何重写规则,使其与第二个示例不匹配,只有第一个?

1 个答案:

答案 0 :(得分:0)

RewriteRule ^online/producator-([^/]+).html$ /producator-$1.html [L,R=301]

关键部分是[^/],它将阻止匹配子文件夹。