IIS反向代理 URL重写 404或500 错误问题的解决方案

#

-仅支持IIS7及以上版本(官方是这么说的,我一直用的IIS6,也没啥问题,有兴趣的人可以去研究下)

  1. 先安装好环境,把网站配置好,应用池选择集成模式,否则【重写】功能将会失效,官网或者IIS商店里可以安装【ARR】和【URL重写】功能,安装完记得重启电脑下,ARR可能不生效

IIS反向代理 URL重写 404或500 错误问题的解决方案

2.【ARR】配置

IIS反向代理 URL重写 404或500 错误问题的解决方案

IIS反向代理 URL重写 404或500 错误问题的解决方案

  1. URL重写,我现在想让web1展示web2页面的数据,则需要配置web1的【url重写】,让我在访问web1时,通过配置可以访问到web2的数据

IIS反向代理 URL重写 404或500 错误问题的解决方案

IIS反向代理 URL重写 404或500 错误问题的解决方案
IIS反向代理 URL重写 404或500 错误问题的解决方案

IIS反向代理 URL重写 404或500 错误问题的解决方案
IIS反向代理 URL重写 404或500 错误问题的解决方案

进阶版

1.需求变更:只有当我访问 http://192.168.6.101:1111/index1.html的时候,展示web2的index2.html的内容

IIS反向代理 URL重写 404或500 错误问题的解决方案

  1. 点击 web1,将之前的url重写的规则删除,新建一个
    IIS反向代理 URL重写 404或500 错误问题的解决方案
    IIS反向代理 URL重写 404或500 错误问题的解决方案

  2. 重启IIS,点击浏览,成功

IIS反向代理 URL重写 404或500 错误问题的解决方案

4、对于简单页面来说 上面的步骤已经够了,但是对于复杂项目或者有各种引用和请求的页面,还需要配置一些东东
IIS反向代理 URL重写 404或500 错误问题的解决方案
IIS反向代理 URL重写 404或500 错误问题的解决方案

  1. 文件404报错问题

首先在IIS中的站点里,找到处理程序映射,双击进去。

1、添加脚本映射(路径:*.html可执行文件%windir%Microsoft.NETFrameworkv2.0.50727aspnet_isapi.dll名称:任意,比如Html)。

2、添加通配符脚本映射(路径:*可执行文件:C:\Windows\Microsoft.NET\Frameworkv2.0.\50727\aspnet_isapi.dll名称:任意,比如All)。

3、托管处理程序映射(路径:*.html可执行文件:System.Web.UI.PageHandlerFactory名称任意比如Html-Integrate)。

4、IIS中找到模块(双击进去)–>添加托管模块---->(名称:任意如All类型:URLRewriter.ModuleRewrite把仅针对向asp.net应用程序或托管处理程序发出请求调用勾上。