asp.net站点阻止某个文件夹或者文件被浏览器访问

一个站点根目录下面有一个Config文件夹,这个文件夹里面都是一些json格式的txt文本,文本是一种静态资源,如果知道这个文本的地址,就可以在浏览器中输入地址打开这个文本,别人就可以看到站点的配置,这是不希望的结果,所以就需要让这个文件夹禁止被浏览器访问。

 
方法一:
把*.txt的文件后缀修改为*.config,asp.net默认不能够访问.cs、.config等后缀的文件。注:在vs中添加一个config文件,然后编写需要的配置内容,推荐这种形式。
 
方法二:
<handlers>
    <add name="test" path="/config/*.txt" verb="*" type="System.Web.HttpForbiddenHandler"/>
 </handlers>
 
HttpForbiddenHandler:
 1 using System;
 2 
 3 namespace System.Web
 4 {
 5     internal class HttpForbiddenHandler : IHttpHandler
 6     {
 7         public bool IsReusable
 8         {
 9             get
10             {
11                 return true;
12             }
13         }
14 
15         internal HttpForbiddenHandler()
16         {
17         }
18 
19         public void ProcessRequest(HttpContext context)
20         {
21             PerfCounters.IncrementCounter(AppPerfCounter.REQUESTS_NOT_FOUND);
22             throw new HttpException(403, SR.GetString("Path_forbidden", new object[]
23             {
24                 context.Request.Path
25             }));
26         }
27     }
28 }
原文地址:https://www.cnblogs.com/nyth/p/5084326.html