首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Web.Config中禁用目录浏览

如何在Web.Config中禁用目录浏览
EN

Stack Overflow用户
提问于 2011-04-05 16:49:52
回答 4查看 47K关注 0票数 23

我有一个WebSite,我想拒绝目录浏览器从一个的web.config文件

在这里,我使用的代码放在根目录中。不起作用。我正在本地测试它,所以使用像http://localhost:3214/这样的网址,我仍然可以浏览CMS的目录。

  • 我做错了什么?
  • 即使在本地计算机上也应该工作吗?

多谢你们的支持!

代码语言:javascript
复制
<configuration>
  <location path="Cms">
    <system.webServer>
      <directoryBrowse enabled="false" />
    </system.webServer>
  </location>
</configuration>

一些资源:

http://blogs.iis.net/bills/archive/2008/03/24/how-to-enable-directory-browsing-with-iis7-web-config.aspx

http://www.expta.com/2008/03/configuring-virtual-directories-with.html

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-05 17:02:33

首先:并不是所有的东西都能在<location>块中工作。

我找不到<location>中不支持<system.webServer>的肯定说法,但我也找不到任何建议允许它的情况。这方面的证据在(全局) machine.config中,其中system.webserver部分被定义为使用IgnoreSection处理程序: ie。它不是由标准System.Configuration实现处理的,而是为<location>提供支持的配置处理的标准实现。

尝试使用directoryBrowse元素在Cms文件夹中添加web.config,以确认已阻止浏览。

票数 7
EN

Stack Overflow用户

发布于 2011-04-05 16:58:41

Gibbok,这里没什么问题,不要惊慌:)

假设您是从Visual Studio中的内置服务器浏览您的网站,这通常是正常的情况。

我非常确定,如果您使用上面的代码迁移到IIS,目录浏览的行为将与您希望的一样。

试一试,在IIS中托管这个网站,并让我们知道发生了什么,谢谢。

票数 6
EN

Stack Overflow用户

发布于 2011-05-20 05:46:41

我也在尝试同样的代码。你所拥有的实际上是正确的。这是reference

当然,它对我不起作用,我也不知道为什么,直到我读了理查德的帖子,才想起有人在那个目录中放了一个web.config文件。该文件将覆盖主web.config文件中的行为。在子目录web.config中,directoryBrowse选项被显式打开(以及许多其他处理程序)。删除这个文件,你上面的工作对我来说是有效的。它实际上将请求传递给下一个处理程序,这正是我想要的。

我在本地计算机上使用IIS 7。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5549374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档