URL Rewrite适用于重定向但不能重写

时间:2016-04-06 16:25:20

标签: iis url-rewriting iis-8 url-rewrite-module

我设置了一个IIS服务器(IIS 8)并添加了URL Rewrite。

如果我设置:

Requested URL: "Matches the Pattern"
Using: "Regular Expressions"
Pattern: "(.*)"
No conditions
Action Type: "Redirect"
Redirect URL: "http://myloadbalancer_censored_name.elb.amazonaws.com/"
Redirect Type: "Temporary (307)"

这就像我期望的那样。

当我在浏览器中输入网址时(类似“http://10.0.1.47”),我的浏览器的多功能广告会更改为重定向网址(类似http://myloadbalancer_censored_name.elb.amazonaws.com/)。

到目前为止一直很好......

但是当我将URL Rewrite中的设置从重定向更改为重写时,我会回来:

HTTP Error 404.4 - Not Found

Requested URL
   http://10.0.1.47:80/ 

Physical Path
   C:\inetpub\wwwroot 

我正在尝试设置一个反向代理来提取网络资源,好像它们来自一台单独的计算机(隐藏我的网络应用服务器实际存在的内部)。

修改

在IIS日志中,我可以看到以下两行:

2016-04-06 15:59:34 10.0.1.11 GET / - 80 - 10.0.1.11 Mozilla/5.0+(Windows+NT+6.3;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko - 404 4 123 15

2016-04-06 16:01:07 10.0.1.11 GET / - 80 - 10.0.1.11 Mozilla/5.0+(Windows+NT+6.3;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko - 307 0 0 46

第一个是重写。第二个是重定向。这表明我正在使用相同的IP,但由于某种原因它会因重写而失败。

1 个答案:

答案 0 :(得分:1)

在Internet Information Manager(IIS)中选择根级别服务器,然后选择“应用程序请求路由缓存”。

点击最右侧窗格中的“服务器代理设置...”。

选中“启用代理”。