IIS Url重写

Posted zhuanjiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS Url重写相关的知识,希望对你有一定的参考价值。

一、项目需求

  一个B2B平台。 网站登录地址:xxx.xxxx.com

  a企业编码:aa

  b企业编码:bb

  项目原计划使用泛域名,即:使用  ***.xxx.xxxx.com访问平台(aa.xxx.xxxx.com,bb.xxx.xxxx.com),但是本公司未买泛域名相关的服务,暂不支持泛域名(具体原因不详,就是公司暂时用不了泛域名)。

  那怎么办呢?又想到了三级域名,这下妥妥的吧,但是一打听,成本太高了,又不了了之。

  最后产品又想到了一个办法,既然域名无法解决,那就搞一搞域名后的url呗,采用xxx.xxxx.com/***这种形式访问(xxx.xxxx.com/aa,xxx.xxxx.com/bb),各个机构不也能区分开么,实属极为机智之举。

  既然产品提出了这样的需求,那么研发也总得配合下吧,于是请出了IIS的Url重写模块!

二、Url 规则配置

  说明:以下都是在本地的测试配置。本地局域网ip:192.168.82.86 ,subject项目为例进行配置,正常访问地址为192.168.82.86/subject/#/

  2.1 选中自己站点目录

  2.2 双击Url重写

  

   2.3 点击右边添加规则

  

   2.4 双击入站规则中的空白规则,然后根据需求填写自己的匹配规则,点应用即可

  

  2.5 生成的配置文件

  

三、测试运行

  浏览器输入http://192.168.82.86/test/subject

四、遇到的问题以及解决办法

  遇到 HTTP 错误 403.18 - Forbidden

提示很明显,原请求应用程序的程序池和重写后的请求应用程序的程序池不一致。

设置办法:右键项目>>管理应用程序>>高级设置

以上是关于IIS Url重写的主要内容,如果未能解决你的问题,请参考以下文章

IIS URL重写

IIS5.1设置URL重写?

如何配置iis rewrite模块的url重写规则

关于IIS7 URL重写的问题

url重写,IIS需要这么配置,~/aa.aspx?id=1变成~/aa_1/

使用 IIS 7 重写模块重写 & 符号 URL