0

我一直在 VS 2012 中开发一个 Web 应用程序(asp.net mvc),并且它一直在流畅地运行。我现在已经将它部署到我的计算机 IIS 上,只是为了在 VS 之外运行一些测试,我提出了一些问题。

这些问题与图像和 JS 文件的链接方式有关。该问题的最简单示例是图像 src。所以在我的 site.css 我有以下风格:

.menu_div .mnuHeader
{  
     background: url('/img/menuSectionHeader.png') repeat-x center;     
 }

这在开发环境中运行良好,因为 VS IIS express 实例将其旋转为“http://localhost:51034/”。但是当我将它部署到 IIS 时,该网站位于一个虚拟目录中,因此该网站被称为“http://localhost:80/MyWebsite/”。

因此,除非我浏览整个应用程序并将其更改为 /MyWebsite/,否则图像和资源链接将不起作用(这实际上并不可行,因为我必须拥有两个不同的应用程序实例,一个用于开发,一个用于部署,一个只是链接有点危险)。

我在这里错过了什么吗?

谢谢

4

1 回答 1

1

你为什么不尝试相对路径?如果 CSS 文件在 /css/ 中,而图形在 /img/ 中,那么您的示例将是:

.menu_div .mnuHeader
{  
     background: url('../img/menuSectionHeader.png') repeat-x center;     
 }

您还可以尝试在生产中为 /MyWebsite/img/ 重写/img/:http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-重写模块

于 2012-10-09T21:45:22.743 回答