从IIS Express切换到IIS后,图像无法在本地显示

时间:2015-10-10 19:55:59

标签: asp.net iis iis-7.5 iis-express

我在ASP.NET中开发了一个包含图片的网站:

<div id="pictureDiv">
            <img src="/Content/Images/Barry.jpg" style="width:270px;height:330px" />
        </div>  

当我使用IIS Express在本地运行时,会显示图像。 当我使用IIS将其部署到托管它的服务器时,它也会显示 当我设置IIS以在我的本地计算机上运行时,它不会显示。 如果我将图像src替换为绝对源(例如http://tinyurl.com/pesd27g),那么这也是有效的

所以看起来上面html中的相对src引用在IISExpress中工作,但在IIS中却不行。我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:0)

外部网址(作为&#34; tinyurl&#34;在您的问题中)将始终有效。你应该按照以下顺序问自己3个问题:

  1. 我的相对网址是否已正确解析 - 您可以使用浏览器中的开发者工具(F12)
  2. 进行检查
  3. 如果网址正确,文件系统中给定位置是否有文件?
  4. 如果文件存在,则IIS无法正确提供。
  5. 检查IIS中是否启用了StaticFile处理程序。您可以在IIS->Site->Handler mappings找到它。

    您也可以在system.webServer/handlers中的web.config中打开它。

    <add name="AspNetStaticFileHandler" path="*" verb="*" type="System.Web.StaticFileHandler" />