5

我的 App_Data 目录中有 2 个图像文件,我想在我的视图中显示它们,如下所示:

@foreach (var media in Model)
{
     <div class="col-lg-3 col-md-4 col-xs-6 thumb">
         <a class="thumbnail"><img src="@Url.Content("~/App_Data/uploads/" + @media.URL)" alt="image" /></a>
      </div>
}

当我检查浏览器中的链接时,我得到了这个:

<img src="/App_Data/uploads/Warnings.png" alt="image">

它说他找不到图像。如何设置正确的链接?

4

1 回答 1

11

App_Data 文件夹是一个特殊的 .NET“系统”文件夹,其中 IIS 被配置为不允许该文件夹的内容对 Web 用户可见。创建一个不同的文件夹来存储您的图像,因为您确实不应该允许 App_Data 在网络上可见(如果您甚至可以更改设置)。

来自 iis.net

例如,在托管 ASP.NET 内容的 Web 服务器上,IIS 7 为您阻止了几个与 ASP.NET 相关的路径;Web.config、bin、App_Code 等。阻止这些 URL 段可降低攻击者利用这些 URL 获取信息的机会。

于 2013-12-19T17:33:07.290 回答