gpt4 book ai didi

asp.net - 如何编辑 web.config 以停止为 .NET Web 应用程序的特定文件类型提供服务

转载 作者:行者123 更新时间:2023-12-04 16:40:25 25 4
gpt4 key购买 nike

我想阻止用户通过浏览器访问某种类型的文件。例如,IIS 服务器默认阻止访问 .config 和 .vb 文件,给出错误消息“您请求的页面类型未被提供,因为它已被明确禁止”,我想添加其他文件这种行为的类型。

有什么可以添加到应用程序的 web.config 文件中的吗?我宁愿不通过使用 <authorization> 阻止目录访问来处理它元素。

最佳答案

在 IIS 7+ 中,可以在应用程序级别完成请求过滤。在 web.config 中添加以下代码:

<system.webServer>
<security>
<requestFiltering>
<fileExtensions>
<add fileExtension=".vbs" allowed="false" />
</fileExtensions>
</requestFiltering>
</security>
</system.webServer>

对于 IIS 6,上述方法将不起作用,但您可以模仿 .cs 文件等页面存在的默认阻止行为,尽管您可能必须在服务器端进行更改。首先,将以下内容添加到您的应用程序的 web.config 中:
<system.web>
<httpHandlers>
<add path="*.vbs" verb="*" type="System.Web.HttpForbiddenHandler" validate="True"/>
</httpHandlers>
</system.web>

如果将 asp.net 设置为处理该文件类型,例如 .cs,那么您就完成了。但是,如果您要阻止的文件类型由 IIS 处理,而不是由 asp.net(如 .vbs)处理,则这还不够。您必须在 IIS 管理器中进行更改以映射文件扩展名,如图所示 here .

关于asp.net - 如何编辑 web.config 以停止为 .NET Web 应用程序的特定文件类型提供服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12412915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com