无扩展名MVC和IIS 8请求过滤

7
我正在使用安装在Server 2012上的IIS 8,提供无扩展名页面的MVC网站。我试图通过在请求过滤部分阻止除允许的扩展名外的所有内容来加强IIS的安全性。然而,由于无扩展名的MVC页面没有扩展名,这变得有些困难!
我已经尝试添加“.mvc”、“.aspx”和“.cshtml”到允许列表中,以查看它们是否有效。但是,当我在“编辑功能设置”菜单中取消选中“允许未列出的文件名扩展名”时,我仍然会收到404错误。
是否有任何特殊字符的组合或某种关键字可以用于将无扩展名地址添加到允许列表中,以便我可以阻止所有未列出的扩展名?我真的不想允许未列出的文件名扩展名,然后创建数百个被拒绝的扩展名列表。
谢谢大家!

2
我的回答有帮助吗?如果有的话,请随意接受和/或点赞,或者提供反馈,以便我可以改进它。否则,这个线程看起来被放弃了,对于后续读者来说有点无用。谢谢! - Alexander Abakumov
1个回答

12
当然。为了允许无扩展名地址,请按照以下方式将 <add fileExtension="." allowed="true" /> 添加到您的 web.config 中:
  <system.webServer>
    <security>
      <requestFiltering>
        <fileExtensions allowUnlisted="false">
          <add fileExtension="." allowed="true" />
        </fileExtensions>
      </requestFiltering>
    </security>
  </system.webServer>

请告诉我这是否有帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接