带重音的htaccess rewriterule给我内部服务器错误500

时间:2014-02-17 13:41:05

标签: .htaccess rewrite non-ascii-characters

我在htaccess中有一个重写规则来检查最后一段是否是字母(包括带重音的字符)。

RewriteRule ^search/tag/([A-Za-záéíóú]+)$      page.php?tag=$1 [L]
RewriteRule ^search/tag/([A-Za-zàèìòù]+)$      page.php?tag=$1 [L]

为什么第一个工作,第二个导致内部服务器错误500?

问题似乎是“à”char,为什么?

1 个答案:

答案 0 :(得分:1)

请务必在正则表达式中使用带引号的B标记来修复500错误:

RewriteRule "^search/tag/([A-Za-záéíóú]+)$" page.php?tag=$1 [L,B]

RewriteRule "^search/tag/([A-Za-zàèìòù]+)$" page.php?tag=$1 [L,B]