ASP.NET做的网页 无法下载中文名的文件(转帖)

今天部署的网站头疼了半天,在我的电脑上测试正常,但偏偏这机子这样,一查才知道,在这把这文章转载下希望对大家有点帮助

 

当在URL和文件名中使用中文字符时候,IIS报404错误,找不到页面,检查程序目录结构,发现一切正常。

如果你的服务器不是IIS,并且浏览器是IE, IE使用缺省设置~~中文名的网页是无法访问的
原因是IE会将中文转换为UTF-8,但目前只有IIS能识别它

解决方法:

方法一:

1.改变注册表中
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters\FavorDBCS
将其值修改为 0

2 重启计算机

方法二:

在程序中自行控制  
   
  '转换双字节字符为合法的URL传输字串      

  function     getUrlEncodel(byVal     Url)       
        Dim     i,code       
        getUrlEncodel
=""
       
        
if     trim(Url)=""     then     exit     function
       
        
for     i=1
     to     len(Url)       
                        code
=Asc(mid(Url,i,1
))       
                        If     code
<0     Then     code     =     code     +     65536
       
                If     code
>255
     Then       
                                getUrlEncodel
=getUrlEncodel&"%"&Left(Hex(Code),2)&"%"&Right(Hex(Code),2
)       
                        
else
       
                                getUrlEncodel
=getUrlEncodel&mid(Url,i,1
)       
                        end     
if
       
        next       
  end     
function

方法三:


先在ie的工具-internet选项-高级中总是以UTF-8发送URL前面的方框中钩去掉

方法四:

 不使用中文文件名

posted @ 2008-09-19 22:19  藏积  阅读(489)  评论(0编辑  收藏  举报