我的localhost文件夹(C:\ inetpub \ wwwroot \ Images)中有一堆图像,我试图在我的ASP.net应用程序中访问它。我的标记中生成的图像src是:
<img id="MainContent_MainImage" src="localhost/Images/FGOStuart_7166.jpg" />`
这无法加载图片,如果我查看它实际指向的页面的来源
http://localhost:64395/Pages/localhost/Images/FGOStuart_7166.jpg
因此看起来它正在尝试访问相对于页面的路径(在Pages文件夹上)。如果我手动在浏览器中输入src并显示图像,则src有效。
任何人都可以解释这里发生了什么以及如何解决它?我试图将图像移出数据库并移到文件系统上,但到目前为止没有太多运气。
答案 0 :(得分:3)
这是因为浏览器假设“localhost”是一个文件夹并将其添加到当前相对路径。添加http,它应该可以正常工作,或者完全删除localhost,然后保留/ Images ...部分。
答案 1 :(得分:2)
试试这样:
<img id="MainContent_MainImage" src="~/Images/FGOStuart_7166.jpg"
alt="An Image" runat="server" />
这将从根目录向下解析服务器端。并始终使用alt:)
答案 2 :(得分:1)
真正想要做的是使用魔法代字号:
<img id="MainContent_MainImage" runat="server" src="~/Images/FGOStuart_7166.jpg" />
~
表示应用程序的根目录。请注意,我也添加了runat="server"
。