使用 Mod_Rewrite 使用中文字符

使用 Mod_Rewrite 使用中文字符

我正在尝试使用汉字创建规则

#RewriteRule ^zh(.*) /中文版$1 [L,R=301]

当我将文件更改为 UTF-8 时出现错误 500

#RewriteRule ^zh(.*) /%E4%B8%AD%E6%96%87%E7%89%88$1 [L,R=301]

重定向到 /%25E4%25B8%25AD%25E6%2596%2587%25E7%2589%2588 (基本上用 %25 替换 %)

有人熟悉这个问题吗?

答案1

有一整页专门讨论此问题,并包含解决方案:

http://www.dracos.co.uk/code/apache-rewrite-problem/ (仅供参考:Google“apache escape” -> 第 6 次命中)

答案2

使用记事本,我将编码更改为“ANSI as UTF-8”,而不是 UTF-8。这使一切都按预期工作。

相关内容