2016-01-27 10 views
0

我已经有一些PDF文件坐在网络服务器上,暂时我想隐藏它们(即让它们返回404s)。这可以通过重写规则在web.config文件中完成吗?如何在IIS中创建重写规则以临时隐藏所有PDF文件?

RewriteRule \.pdf$ - [R=404,L,NC] 

如何实现与IIS同样的效果:

在Apache中你可以像这样做呢?

+0

文件是否放置在单独的文件夹中? – Agalo

+0

不,他们不是;他们在网站的根目录中。 – SoaperGEM

回答

1

实现此目的的一种方法是使用IIS中的HiddenSegments。 HiddenSegments会使客户无法访问URL。此外,IIS将向客户端返回一个HTTP 404错误并记录404.8 HTTP子状态。

<configuration> 
    <system.webServer> 
     <security> 
     <requestFiltering> 
      <hiddenSegments> 
       <add segment="pathofpages" /> 
      </hiddenSegments> 
     </requestFiltering> 
     </security> 
    </system.webServer> 
</configuration> 

编辑1: 您还可以使用RequestFiltering来拒绝对客户的PDF扩展。将返回HttpStatus sub code 404.7。所有对PDF文件的请求都将被拒绝。

IIS.net

在请求筛选窗格中,单击文件扩展名选项卡, 然后单击拒绝文件扩展名......在操作窗格中。

+0

有什么办法可以将这个应用于某些文件扩展名,而不仅仅是整个文件夹? – SoaperGEM

+0

你也可以指定每个文件的URL,而不仅仅是文件夹。 – Agalo

+0

完美,请求过滤正是我一直在寻找的。 – SoaperGEM