在VS 2012发布后,图像不会显示

时间:2013-05-18 20:04:38

标签: c# asp.net visual-studio iis webdeploy

我创建了asp.net web项目。我在这个项目中包含了一些文件。遵循所有CSS标准。

background-image: url('~/Images/sideheader.png')

我调试网站时可以看到所有图片。但是当我发布我的网站时,我的网站上看不到任何图片。

请帮我解决这个问题。

5 个答案:

答案 0 :(得分:1)

您应该像这样使用它:

background-image: url('/Images/sideheader.png')
以这种方式,相对路径可以解析到正确的位置。

答案 1 :(得分:0)

您的网址未指向该文件。它在调试服务器上运行正常,因为当您在调试中运行它时,它会为您的项目启动一个测试服务器,该服务器的配置与您发布到的服务器的配置不同。因为您将其放在不同的目录中,或者配置了不同的主目录,所以无法找到该图像。

对于提出此问题的任何人来说,这是通过测试来确定的,如果用绝对的URL替换相对URL会解决问题,这发生在OP的评论部分。

答案 2 :(得分:0)

当您手动将文件(即images / js / css)添加到目录并直接在html / css中使用它们时(根据您的问题),Visual Studio不知道它们存在。您需要“显示所有文件”,然后“在项目中包含”您要发布的图像/文件。

只有Visual Studio中解决方案资源管理器中可见(=包含)的文件才会发布到您的服务器。

enter image description here

答案 3 :(得分:0)

您只需将文件夹images添加到项目中并重新发布项目即可。要添加文件夹,请转到solution explorer,点击show all files,右键单击images文件夹,然后选择include in project。您无需更改在css或其他任何地方使用过的图像的任何网址。

答案 4 :(得分:0)

我遇到了同样的问题,在我的情况下,因为Visual Studio无法识别Images文件夹,所以我必须为每个人设置读取权限。一旦我设置了图像文件夹权限,我的图像显示就好了。