在IIS 7我试图拒绝访问所有文件的扩展名为.XML为所有用户。
我想在我的web.config文件的如下设置:
<location path="*.xml">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
</location>
但随后获得在内部服务器错误的任何文件的结果。
它的工作原理,如果我拒绝访问的单个文件,但这个解决方案不给我买多少,因为我不知道提前所有.xml文件。
试试这个:
<configuration>
<system.web>
<httpHandlers>
<add path="*.xml" verb="*"
type="System.Web.HttpNotFoundHandler" />
</httpHandlers>
</system.web>
</configuration>
顺便说一句,你可以或者所有的XML文件的存储内的App_Data目录。 任何类型的此目录中的存储文件将不会投放到网上。
另一种方法是使用请求过滤器:
<system.webServer>
<security>
<requestFiltering>
<fileExtensions>
<add fileExtension=".xml" allowed="false" />
</fileExtensions>
</requestFiltering>
</security>
</system.webServer>