我一直在开发一个应该能够接受多种语言的标签和搜索查询的 Web 应用程序。这不是要求太多,是吗?
现在,在我的开发 MAMP 服务器上,一切都很好。我添加多语言标签,以我想要的任何语言搜索等。
另一方面,在生产 WAMP 服务器上,多语言字符会带来麻烦。甚至不是一直,只是某些时候,或者某些角色,我还不确定。
发生的情况是他们获得了额外的字符,然后他们的 URL 解码不正确。
两种环境都使用 PHP 5、MySQL 和 Apache。
我的猜测是我在某个地方设置错误。
有任何想法吗?
更新:我现在确定是特定的字母(例如希伯来语 ל,מ א)
更新:易于重现:总是相同的字母得到错误的编码。
- 内容类型是
text/html; charset=utf-8
此外,我进一步指出:
我使用搜索字符串:ליבני
在结果页面上,我看到:
- 在地址栏中,搜索短语是正确的,正确的 url 编码。
- 在 HTML 本身中,我看到字符串“ �_יבני ”,即“
%D7_%D7%99%D7%91%D7%A0%D7%99
”,这意味着ל已被编码为“%D7_
”,而不是%D7%9C
应有的“”。
我真的不知道该往哪里走。
有任何想法吗?任何人?