症状:
服务器端不支持中文名的页面及文件,页面就是无法显现,文件就是无法下载
http://地址/中文名.zip
就死活下不来,迅雷也不行,迅雷测试了所有这个中文的各类编码,都是不行
http://同样的地址/1.zip
就能下载
传到服务器端出现的问题,本地调试的时候也没这问题...RP
服务器和本机都是win2kSP4,IIS5.0,.net framework 2.0,已经打了所有能打的补丁,安全更新
网友建议:
freelyl(飞翔) ( ) 信誉:100 Blog 2006-9-26 17:54:16 得分: 0
中文名的连接一般是要经过UrlEncode才能放在地址的。不然 下载不了。
keenx(老刀) ( ) 信誉:95 Blog 2006-9-26 18:32:45 得分: 0
http://地址/中文名.zip
改成
http://地址/%D6%D0%CE%C4%C3%FB.zip
测试,无用,不是编码的问题
解决方案:
1.修改注册表,将[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/InetInfo/Parameters]
FavorDBCS 的值改为"0",重启IIS生效。
2.测试后还是无效- -
3.打开Internet 服务管理器,选择*计算机名主节点,右键选择属性,"主属性",点"编辑"按钮,找到"ISAPI筛选器"标签页
4."UrlScan"筛选器赫然在目,原来罪魁祸首在此
5.关于此安全工具,请参考微软的"如何使用UrlSan"一文
6.配置此工具.URLScan 的所有配置都是通过 URLScan.ini 文件执行的,此文件位于 %WINDIR%/System32/Inetsrv/URLscan 文件夹中。要配置 URLScan,请在文本编辑器(如记事本)中打开此文件,进行相应的更改,然后保存此文件。
7.找到[Options] 节的AllowHighBitCharacters项,将值由0改为1.
8.关于此项的解释:默认情况下,此选项设置为 0。如果将此选项设置为 0,则 URLScan 拒绝任何包含非 ASCII 字符的请求。这样可以防止某些类型的攻击,但同时可能也会禁止对某些合法文件的请求,如带有非英文名的文件。
9.关于配置此工具设置的更多信息请参看"如何配置 URLScan 工具"一文.
10.重启IIS,问题解决.