除了一个

时间:2015-07-25 11:04:53

标签: regex apache .htaccess mod-rewrite rewrite

我在下面有以下代码;

RewriteRule  ^((?!fr|en).*)\/(\?.*)?$     /$1 [L,R=301]

而我正在尝试;

example.com/fr/ 
example.com/en/

转向

example.com/fr/
example.com/en/

这是我想要的,但是一旦我尝试;

example.com/frabcdefg/
example.com/enabcedefg/

然后它不会删除尾部斜杠,因为它以en或fr开头但应该是。

有没有办法这样做?

编辑: 我想在下面尝试时想要实现的是;

example.com/fr/

应该没有改变如下;

example.com/fr/

然而,一旦我尝试;

example.com/frabcde/

它应该转向;

example.com/frabcde

应删除末尾的尾部斜杠。

1 个答案:

答案 0 :(得分:1)

您可以在root .htaccess中使用此规则:

RewriteEngine On

RewriteRule ^((?!(?:fr|en)/).+?)/$ /$1 [L,NC,R=302]