我写了URL重写规则:
<match URL="^([_0-9a-z-]+)/([_0-9a-z-]+)/([_0-9a-z-‘!@#$%^*()!~`\."]+)"/>
但我的网址中有一些中文字符,如:
'http://www.ilanbio-international.com/News/4443/中国陕西西安---渭南验室奠基石庆典'
这条规则不支持。 那么如何通过URL重写来支持中文字符呢?
答案 0 :(得分:3)
只需添加:
<match url="^([_0-9a-z-]+)/([_0-9a-z-]+)/([_0-9a-z-‘!@#$%^*()!~`\."\u4e00-\u9fa5]+)"/>
取代这个:
<match URL="^([_0-9a-z-]+)/([_0-9a-z-]+)/([_0-9a-z-‘!@#$%^*()!~."]+)"/>
然后你的问题就会解决。
答案 1 :(得分:1)
感谢有用的问题和答案!
只是在这里为任何人添加都存在相同的问题,但要寻找Arabic Unicode characters (0600–06FF, 255 characters)
的答案,则如下所示:
<match url="^([_0-9a-z-]+)/([_0-9a-z-]+)/([_0-9a-z-\u0600-\u06FF]+)"/>
答案 2 :(得分:0)
搜索字符here的unicode(如果您不使用简体中文,请在Google上搜索YourLanguage unicode table
。
如果你想写丈
(这是我链接到的表中的第五个字符),你需要编写\u4E08
,其中4E08是unicode。
因此中国陕西西安
会转换为\u4E2D\u56FD\u9655\u897F\u897F\u5B89
。
.htaccess规则使用RegEx进行匹配。
答案 3 :(得分:0)
您必须为URL重写创建自定义提供程序,并将这些中文字符替换为普通字符