欺骗IIS 6.0 html网站以为它在根本上

时间:2009-11-11 22:10:59

标签: html iis-6

我不知道如何搜索这个,也许Serverfault会更好,但我会从这里开始。

我在其中一个网络服务器的根目录下运行了一个HTML网站。它运行良好和花花公子。我需要为它创建一个测试环境,并且我无法在websever的根目录中运行它。我必须在测试服务器上创建一个目录。例如:

http://myTestserver/HtmlWebsite/index.html代替http://myProdserver/index.html

一旦我将它扔进目录,大多数都会中断。有些图片无法加载,无法找到javascript文件,质量歇斯底里!

我发现该网站的作者在所有文件中使用了绝对和相对目录路径的混合,因此为什么有些图像正确加载。

我可以进入并编辑所有相对文件。但我想知道我是否可以让IIS 6.0认为它所在的Web应用程序目录是Web服务器的根目录。所以,如果我在HTML中有一个绝对路径,如:

<img src="/_support/loadme.jpg" />

它会为我提供 http://myTestserver/HtmlWebsite/_support/loadme.jpg http://myProdserver/_support/loadme.jpg 的图片。

我可以让IIS 6.0进行出价,还是我编辑路径?

2 个答案:

答案 0 :(得分:0)

不幸的是,您要么必须在整个网站上修复绝对网址,要么在根网站中运行该网站。

您是否无法在IIS6测试服务器上创建新网站?

答案 1 :(得分:0)

您应该可以使用网址重写

首先安装ISAPI Rewrite,在此处找到:http://www.helicontech.com/isapi_rewrite/

然后使用以下规则创建配置:

RewriteEngine on    
RewriteRule (.+) /HtmlWebsite$1

它的作用是你的请求,比如/index.html,并在内部将其重写为/HtmlWebsite/index.html,这是(具有讽刺意味的是)诱使你认为你是从root调用的,实际上它取了它它来自子文件夹。

如果您的测试服务器上有更多内容,则可能必须添加或更改规则,但这是它的要点。