0

问题:

在我的 ASP.NET Web 解决方案中,我有一个名为 redlines 的目录。

我将这个 web.config 放入其中,以使目录可浏览。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <directoryBrowse enabled="true" />
    </system.webServer>
</configuration>

现在它工作正常。但是当我将整个 redlines 目录移动到 App_Data 中,想要浏览文件夹 redlines 时,我得到了 HTTP 403。

我将相同的 web.config 复制到 App_Data 中,因为我认为这可能会有所帮助,但它没有。

有什么问题 ?(IIS 开发服务器,Visual Studio 2010)

4

2 回答 2

6

App_Data是一个受保护的文件夹,您无法通过 url 访问它。这是ASP.NET系统自带的,不知道能不能覆盖?如果您尝试下载其他一些保留文件,例如web.config.

App_Data文件夹旨在将您的敏感数据存储在其中。如果你想提供文件,你可以使用 HttpHandler 来提供文件。

于 2011-07-22T07:22:36.767 回答
1

App_Data 是一个隐藏文件夹。因此,其中的任何内容都将被隐藏。如果您查看 IIS 管理器中的请求过滤控制面板,无论是站点还是根目录,您都会看到哪些文件扩展名和目录被阻止。

绝对建议您更改其中的任何内容。这样设置是为了保护您的应用程序。

如果您可以接受风险,请继续,否则请寻找其他解决方案。就像将文件夹放在不同的位置或创建从文件夹中读取/写入的内容。

西蒙

于 2011-07-22T09:15:30.830 回答