2013-12-19 123 views
4

我在我的App_Data目录2个图像文件,我想告诉他们,我认为是这样的:显示图像存储在App_Data文件

@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"> 

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

+1

检查您是否在App_Data文件夹中配置了web.config,这会导致很多问题。反正你不应该在这个文件夹中存储图像。 –

+1

@RobertoConteRosito是对的。你真的不应该。 http://stackoverflow.com/questions/1519790/images-that-are-in-app-data-folder-not-shown-in-browser – LiverpoolsNumber9

回答

10

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

From iis.net

例如,承载ASP.NET内容的Web服务器上,IIS 7 块几款适合你的ASP.NET相关的路径; Web.config,bin, App_Code等。阻止这些URL段可以减少攻击者能够利用这些URL获取信息的机会。

相关问题