我在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,为什么?
答案 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]