IIS 6.0设置决定了路径的解析方式?

时间:2008-10-16 20:09:53

标签: http iis-6

我有一个部署在3个不同环境之间的网站--Dev,Stage和Prod。对于Stage和Prod,该站点可以使用文件的基本URL(例如/SiteImages/banner.png)来解析图像的本地路径。但是,在开发服务器上,我必须硬编码要解析的图像的图像路径的完整URL,例如http://server/folder/SiteImages/banner.png。是否有一个设置我可以翻转,以使Dev服务器的行为与其他2相同?我在Win 2003服务器上使用IIS 6.0。

2 个答案:

答案 0 :(得分:1)

dev主页的URL是什么样的?它是http://server/mydevsite/吗?如果是这样,听起来你需要设置一个虚拟主机。

修改为了澄清上述内容,如果您使用/ images /这样的路径,请说明您的prod和舞台网站可以简单地引用为http://stagesite/http://prodsite/ myimage.jpg它假设images文件夹位于根目录中。在这两个实例中,没有问题,图像将正确显示。但是,假设你的开发服务器就像我上面列出的例子。如果您的图片是/images/myimage.jpg引用,而不是服务器查看http://server/mydevsite/images/myimage.jpg,它将改为查看http://server/images/myimage.jpg。如果该服务器的根目录中没有包含所请求图像的图像文件夹,则会出现错误。

答案 1 :(得分:1)

据我所知,通常有三种URI可以在网站中编码。

  1. 绝对http://yoursite.com/somehing.jpg

    此网址包含http://并且是 资源的完整途径。

  2. 根相对: /something/something.jpg

    (在ASP.net中 只有服务器端,你会使用 '〜/东西/ something.jpg')

    此路径相对于。的根 你的网站。

  3. 文件相对: ../something/something.jpg

    这条道路 从文件的位置开始 包括URI。在这种情况下, 它只返回一个目录(..)和 然后回到原点 目录寻找something.jpg