发现在asp.net中的UrlEncode中编码后的结果跟在asp中的结果不同,比如在linux系统下面用apache发布的一个url地址,在asp.net中通过UrlPathEcode编码后的url地址不能指向文件,提示文件未找到...
而在asp中编码就可以,不知道是要配置apache还是.net代码问题啊?

解决方案 »

  1.   

    好像不只这些啊:apache发布的地址:http://202.115.22.196/music/音乐/港台男歌手/周杰伦/七里香/七里香.mp3
    asp下的编码:(在IE里面可以直接下载)
    http://202.115.22.196/music/%D2%F4%C0%D6/%B8%DB%CC%A8%C4%D0%B8%E8%CA%D6/%D6%DC%BD%DC%C2%D7/%C6%DF%C0%EF%CF%E3/%C6%DF%C0%EF%CF%E3.mp3
    .net 下面的编码:(在IE力打开提示404文件未找到错误)
    http://202.115.22.196/music/%e9%9f%b3%e4%b9%90/%e6%b8%af%e5%8f%b0%e7%94%b7%e6%ad%8c%e6%89%8b/%e5%91%a8%e6%9d%b0%e4%bc%a6/%e4%b8%83%e9%87%8c%e9%a6%99/%e4%b8%83%e9%87%8c%e9%a6%99.mp3
      

  2.   

    asp 下是根据 GB2312 内码进行的 UrlEncode。
    asp.net 下是根据 UTF8 进行的 UrlEncode。论坛里已经很多类似你的问题的帖子。
    可以通过在 web.config 里配置 Request/Response 的编码方式来解决。