我要发疯了,我已经尝试了一切,urlencode,html编码,但是urlrewriting.net正在阅读阿拉伯语查询字符串? charecters
非常感谢帮助
答案 0 :(得分:3)
如果您安装了.NET 3.5 SP1,我建议您切换到System.Web.Routing
而不是UrlRewriting.net库。我最近自己从UrlRewriting.net切换到System.Web.Routing
,并且更好地考虑了路由并更好地与ASP.NET管道集成。
如果你有机会切换,我会推荐它。如果没有,请发布您的UrlRewriting.net配置文件,以便我们可以调整显然无效的正则表达式。请发布一些不起作用的URI示例。
此外,web.config
部分中定义的值是什么:
<system.web>
<globalization requestEncoding="utf-8"
responseEncoding="utf-8"
fileEncoding="utf-8" />
</system.web>
与上例相似,请使用UTF-8。还要确保在URI中将字符编码为UTF-8。
答案 1 :(得分:1)
在“经典模式”下运行IIS 7应用程序时会发生什么情况(可能需要将安装作为可用选项)?
答案 2 :(得分:1)
经过长时间的繁琐试验我建议任何在集成模式下使用IIS 7进行URL重写的人,不要浪费时间并使用MVC路由或忘记URL中的阿拉伯字符串
答案 3 :(得分:1)
试试这个,它更快..而且免费问题。
“〜/新闻/ 2008/10/10 / NewSID的/تجربة。ASPX” 其中newsid是您文章的ID。
从数据库中获取标题:'select * from news where id ='&amp; NewSID的 它比以下快得多:“select * from news where title ='”&amp; title&amp;“'”
答案 4 :(得分:0)
似乎我已经解决了这个问题,确保两个页面,包含链接的页面和解析查询字符串的页面都有UTF-8编码
但现在我又遇到了另一个问题 Firefox正确显示地址栏中的超链接和链接 但是在IE6和Ie 7中它就像这样
mysite/News/2008/10/10/%D8%AA%D8%AC%D8%B1%D8%A8%D8%A9.aspx
即使IE 6和7正在解析链接很好,但这很难看,请问有什么解决方案?
答案 5 :(得分:0)
更新:男人,你不会相信它,我发现它是如此奇怪的问题,它是与IIS 7集成模式, 尝试从visual studio Dev服务器启动你的页面并且Unicode字符将被解析得很好,但是如果你从IIS 7启动页面它会给你????字符。
希望有些身体会遮挡一些光线
答案 6 :(得分:-1)
你可以使用 - &gt; global.aspx中的 Server.UrlEncode(productName)或在重写之前,然后在PageLoad中使用 Server.UrlDecode(Request.QueryString [“productName”]);