• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

在 asp.net 中下载文件时遇到 404 错误:请求筛选模块被配置为拒绝包含双重转义序列的 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

似乎是因为路径或文件名中包含加号导致的转义问题。

网上的解决方案基本都是说根据描述,将 web.confg 文件中的 configuration/system.webServer/security/requestFiltering@allowDoubleEscaping 设置为 true 即可。

不过按说默认不允许应该有相关的安全性考虑。

根据网上讨论:https://stackoverflow.com/questions/1453218/is-enabling-double-escaping-dangerous

似乎安全性问题也没那么严重,如果没有将 url 字符串在后续文件系统等操作中使用,所以可以考虑放开该限制。

另外如果还不放心的话,可以设置仅对部分路径开发该设置:

https://stackoverflow.com/questions/5030839/requestfiltering-allowdoubleescaping-true-for-a-single-page

示例配置如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!-- 增加对下载目录特殊字符(加号)的允许 -->
  <!-- ReSharper disable once WebConfig.RedundantLocationTag -->
  <location path="Resources/Downloads">
    <system.webServer>
      <security>
        <requestFiltering allowDoubleEscaping="true" />
      </security>
    </system.webServer>
  </location>
</configuration>

此配置对于网站根路径下的 Resources/Downloads 路径允许了路径中的加号。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap