我的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">
它说他找不到图像。如何设置正确的链接?
答案 0 :(得分:9)
App_Data文件夹是一个特殊的.NET“系统”文件夹,其中IIS配置为不允许Web用户看到该文件夹的内容。创建一个不同的文件夹来存储您的图像,因为您实际上不应该允许App_Data显示在Web上(如果您甚至可以更改设置)。
例如,在托管ASP.NET内容的Web服务器上,IIS 7 为您阻止几个与ASP.NET相关的路径; Web.config,bin, App_Code等。阻止这些URL段减少了一个机会 攻击者能够利用这些URL获取信息。