iis7 url重写和重定向

简介: 注意不管是重写还是redirect重定向,匹配的url都要写成当前网站的url,也就是真是真实可以访问的,如当前网站ip为127.0.0.1,可以写成^127.0.0.1$ (1)url重写(可以实现伪静态) IIS实现反向代理 新建两个站点,端口分别使用 80 和 81,在DNS中新建A记录,指向该计算机(10.4.34.41) 配置过程如下: 1.在Wind

注意不管是重写还是redirect重定向,匹配的url都要写成当前网站的url,也就是真是真实可以访问的,如当前网站ip为127.0.0.1,可以写成^127.0.0.1$

(1)url重写(可以实现伪静态)

IIS实现反向代理

新建两个站点,端口分别使用 80 和 81,在DNS中新建A记录,指向该计算机(10.4.34.41)

配置过程如下:

1.在Windows Server 2012 R2上 安装ARR,URL Rewriter组件。

  ARR3.0需要如下组件支持:Web Farm Framework 2.2(该组件又需要Web Platform Installer 3.0 和 WebDeploy 2.0组件的支持)

  URL Rewriter2.0(For IIS7.0,支持Win 2012 R2)直接安装即可。

  下载地址:http://www.iis.net/downloads/microsoft/application-request-routing

         http://www.iis.net/downloads/microsoft/web-farm-framework

         http://www.microsoft.com/en-us/download/details.aspx?id=7435
 
 依次安装完如上组件后,可以在IIS控制台中看到 ARR 和 URL重写 安装成功
 
 
2.启用ARR:打开ARR,然后在右侧对其启用(使用默认设置即可)
 
3.配置 URL重写,对URL进行过滤,将不同的访问请求(根据URL(DNS中的配置)进行过滤)定向到相应的站点
   该设置表明只有HTTP_HOST为la80.ddv.com的URL才能通过该规则,如果绑定了多个域名,可以根据多次增加或者通过正则表达式的 | 来间隔
 {R:1}表示了Match Url 中的第一个匹配括号

配置完成后如下图:

 

在外部访问 la80.ddv.com 和la81.ddv.com可以访问成功。

 

通过配置web.config文件,也可以实现 URL重写,如下:

      <rewrite>
        <rules>
          <rule name="phpweb">
            <match url="^(.*)" />
            <conditions>
              <add input="{HTTP_HOST}" pattern="^phpweb.leven.com.cn$" />
            </conditions>
            <action type="Rewrite" url="http://localhost:8081/{R:1}" />
          </rule>
        </rules>
      </rewrite>

参考来源:http://blog.sina.com.cn/s/blog_532f78a40100rlpn.html

 

ARR安装完成后,如果在IIS里面看不到ARR图标,解决方法如下

1.分别通过如下命令打开 IIS管理器,查看有无ARR图标:

%windir%\System32\inetsrv\iis.msc
%windir%\system32\inetsrv\InetMgr.exe

2.通过PS脚本检查ARR是否安装成功:

$dll=[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")
#Get the manager and config object
$mgr = new-object Microsoft.Web.Administration.ServerManager
$conf = $mgr.GetApplicationHostConfiguration()
#Get the webFarms section
$section = $conf.GetSection("webFarms")
$section

(2)url 重定向(实现中间代理)

与第一步差不多只不过要把action选项改为redirect选项


目录
相关文章
|
1月前
|
网络协议 开发工具 Android开发
应用研发平台EMAS产品常见问题之接入httpdns后 访问重定向的url访问有问题如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
8月前
|
应用服务中间件 nginx
Nginx rewrite(URL)地址重定向
Nginx rewrite(URL)地址重定向
317 0
|
XML 数据可视化 安全
IIS中的URL Rewrite模块功能学习总结
IIS中的URL Rewrite模块功能学习总结
264 0
IIS中的URL Rewrite模块功能学习总结
|
应用服务中间件 nginx
Nginx反向代理/location/URL重写功能实战
一、Nginx反向代理常用实战 二、location 应用实例
Nginx反向代理/location/URL重写功能实战
|
1月前
|
JavaScript Windows
VUE部署到IIS中报404错误解决方案-配置URL重写
VUE部署到IIS中报404错误解决方案-配置URL重写
|
4月前
|
数据采集 安全 Python
Python爬虫遇到重定向URL问题时如何解决?
Python爬虫遇到重定向URL问题时如何解决?
|
5月前
|
JavaScript
HTTP header location 重定向 URL
HTTP header location 重定向 URL
|
6月前
|
应用服务中间件 Apache nginx
关于 SAP Spartacus 重定向部分外部 url 到后台系统的问题
关于 SAP Spartacus 重定向部分外部 url 到后台系统的问题
51 0
|
7月前
|
iOS开发
解决alert在ios版微信中显示url的问题(重写alert)
解决alert在ios版微信中显示url的问题(重写alert)
69 0
|
Java
springboot 接收post、get、重定向,并从url中获取参数
springboot 接收post、get、重定向,并从url中获取参数
766 0