开发者社区> lhyxcxy> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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选项


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Nginx实战(二) URL重写
Nginx实战(二) URL重写
0 0
详解IIS中的重写工具下关于操作重定向URL中的{R:N}与{C:N}
详解IIS中的重写工具下关于操作重定向URL中的{R:N}与{C:N}
0 0
Nginx反向代理/location/URL重写功能实战| 学习笔记
快速学习Nginx反向代理/location/URL重写功能实战。
0 0
Nginx反向代理/location/URL重写功能实战
一、Nginx反向代理常用实战 二、location 应用实例
0 0
UrlRewrite:重写url,实现伪静态、缩短URL、高安全性
UrlRewrite:重写url,实现伪静态、缩短URL、高安全性
0 0
如何在 ASP.NET Core 中重写 URL
如何在 ASP.NET Core 中重写 URL
0 0
session 之 url 重写|学习笔记
快速学习 session 之 url 重写
0 0
修改.htaccess域名www与不带www301重定向跳转重写URL
Apache下web环境,通过修改.htaccess文件即可实现重写URL,尤其是处于SEO考虑,将域名格式统一,例如将带www的域名统一301重定向到不带www的域名,或者将不带www的域名统一301重定向到带www的域名。
425 0
Nginx之9易筋神功 - (URL重写)
Nginx从入门到深入之URL重写
1256 0
Nginx实现URL重写
利用Nginx实现URL重写,本文使用Nginx与静态页面配合重写URL。
941 0
+关注
lhyxcxy
专注于前后端服务器交互,人工智能,NLP领域
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载