【问题标题】:IIS browse directory problem on a virtual directoryIIS浏览虚拟目录上的目录问题
【发布时间】:2010-05-10 18:09:14
【问题描述】:

我有两个不同的虚拟目录映射到操作系统上的同一目录。在其中一个虚拟目录中,我需要禁用浏览文件夹,而在另一个虚拟目录中,我需要启用它。

问题是,当我更改其中一个时,另一个也发生了变化。我认为这个问题与两个虚拟目录都指向操作系统中的同一个文件夹有关,但是对于 IIS6,我有相同的配置没有问题。

有解决这个问题的想法吗?

谢谢!

【问题讨论】:

    标签: iis-7 iis-6 virtual-directory directory-browsing


    【解决方案1】:

    IIS 7 确实使用目录中的 web.config 文件进行配置,但是,您也可以放弃使用 web.config 文件(即不使用 IIS 管理器工具),而不是通过 IIS 管理器启用目录浏览,只需编辑您的 applicationHost.config 以在您真正希望启用浏览的唯一虚拟目录上设置目录浏览。这将允许您浏览一个虚拟目录而不是另一个虚拟目录,即使它们都指向同一个物理目录。

    这是一个例子: 编辑 applicationHost.config 文件。该文件可以在您的 %WINDIR%\System32\inetsrv\config 目录中找到。

    1) 转到文件底部。您应该在那里为配置部分找到一个 XML 结束标记:

    </configuration>
    

    2) 在该标签上方,使用以下内容作为指导添加位置标签:

     <location path="{website name}/{path to virtual directory}">
          <system.webServer>
               <directoryBrowse enabled="true" />
          </system.webServer>
     </location>
    

    将 {website name} 替换为相关网站的网站名称(如 IIS 管理器中所示),将 {path to virtual directory} 替换为您希望浏览可用的虚拟目录的路径。 示例:

    <location path="MyWebsite/imagelist">
    

    现在假设在上面的例子中,imagelist 是一个指向 {your webroot}/pics 的虚拟目录,而您还有另一个名为 images 的虚拟目录也指向到 {您的 webroot}/图片。当访问者访问 yoursite.com/images 时,他们不会看到图像列表,但是当他们访问 yoursite.com/imagelist 时,他们会得到返回的目录列表。

    【讨论】:

      【解决方案2】:

      有很多可能性,但我面临并解决的问题如下。

      1. IIS 中的 .NET 框架与 web.config 中指定的框架不匹配。将 IIS 中的框架更改为创建的项目之一。 (如果创建的项目或解决方案是 4.5/4.0,则在您的网站高级设置下将 IIS 更改为 4.0。)

      2. 检查 web.config 中的标签是否为所有节点正确关闭。

      这应该有效!

      谢谢, 阿南德

      【讨论】:

        【解决方案3】:

        它与 IIS6 的行为不同的原因是 IIS6 将允许目录浏览的属性存储在虚拟目录的IIS6 Metabase DirBrowseFlags 属性中,每个属性都有一个唯一的条目虚拟目录,而在 IIS7 中,that property is now stored only in the Web.config file:

        <system.webServer>
            <!-- ... -->
            <directoryBrowse enabled="true" />
        </system.webServer>
        

        由于 IIS7 中的两个虚拟目录共享同一个物理目录,它们都共享同一个 Web.config 文件,因此您会发现更改其中一个属性会导致更改出现在另一个中,因为它们都在修改相同的Web.config 文件。

        (目前我不知道对 IIS7 有什么好的解决方法。)

        【讨论】:

        • 感谢 Mike 的解释,我也在寻找但没有运气。
        • 不客气。这里有一些要点,所以你现在可以为答案投票 =)
        猜你喜欢
        • 1970-01-01
        • 2023-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多