目标,使IIS具有类似与Nginx的功能,将指定域名的请求重定向到IIS内、IIS外、其他机器上的其他端口,并且实现https卸载功能

重点预告:

1.安装最新版urlrewrite(微软开发的)插件

2.安装最新版ARR插件(Application Request Routing

3.添加重定向规则

4.流量:外网==>IIS==>指定网站==》UrlRewrite==》ARR==》你的目标程序的url

如果只转发到IIS内网站,则不需要ARR。如果要转发到其他程序或机器,则必须要ARR

如果不需要https卸载可以直接在全局配置规则。

====================正文分割线====================

1.材料

IIS(Windows专业版自带,如果是server版系统,需要通过功能管理器安装(无需下载))

urlrewrite插件,https://www.iis.net/downloads/microsoft/url-rewrite

ARR插件(Application Request Routing)https://www.iis.net/downloads/microsoft/application-request-routing。如果只转发到IIS内网站,则不需要ARR

上面两个插件均可以通过WebPlatformInstaller 搜索安装

2.安装插件

安装好以上两个插件,重启IIS管理器,然后点击当前主机,就会发现两个新增的图标了。如果没看到的话,重启IIS、重启

3.设置绑定

如果不需要https卸载(即外网https流量转发为http流量)可以跳过这步。

使用默认的Default Site或者新建一个网站。并设置绑定如下图

根据需求设置端口和ip。

其中主机名设置为*

为什么要设置为*呢,目标是将要所有流量接入该网站。然后通过ARR/Rewrite将指定的流量再转发出去。

如果你理解了这里的主机名的作用,那么也可以设置指定的一个或多个域名,例如 www.example.com。这样设置转发的时候不会影响其他网站,缺点(也是优点)是,只能接入设置了域名的流量。

注意:https需要先导入/创建一个自签名证书,并在添加https绑定的时候指定该证书。导入证书的图标在第一张图中(服务器证书/ServerCertificates)。

4.ARR设置(如果只转发到IIS内则不需要ARR)

5.添加转发规则。

这里要注意:

  • 规则有两个地方,一个是IIS管理器中单击主机名,一个是单击网站。二者的范围不言自明,一个是全部流量转发,一个是只转发流入指定网站的流量。
  • 要实现https卸载,则必须设置网站中的规则。

这里使用网站规则,因此需要先点击网站,然后双击打开UrlRwrite

添加一条空白规则

填上需要的内容

填好了,赶紧保存下。

6.测试

此时,启动网站,启动9000端口的程序。浏览器输入 https://a.example.com,如果在本地调试,需要在hosts中配置域名转向到本地才能测试哦。

如果使用自签名证书,可能会提示该网站不安全,因为证书的颁发人和目标人都是你自己,而不是第三方受信任的机构。可以把该证书下载下来,然后安装到 受信任的证书颁发机构中。再次打开即可

ARR中还有个功能比较有意思,叫反向代理抓发,可以实现对流入流量的抓包。

如果使用Fiddler来做反向代理监听上面的8889端口,可以参考 http://docs.telerik.com/fiddler/configure-fiddler/tasks/usefiddlerasreverseproxy

也就是在 Fiddler Script中找到  OnBeforeRequest  这个函数,在函数中增加下面一句即可

if (oSession.host.toLowerCase() == "127.0.0.1:8889") oSession.host = "127.0.0.1:9000";//目标服务器监听在127.0.0.1:9000,此时可以在Fiddler中看到入站流量包的详细信息。

注意:开启反向代理之后,会在全局UrlRewrite中添加一条所有请求重写到上述代理的规则,如果只需要过滤指定的请求,可以编辑该规则添加条件。

转载于:https://www.cnblogs.com/shamork/p/config_IIS_like_nginx.html

IIS反向代理/Rewrite/https卸载配置相关推荐

  1. iis 反向代理 应用程序_我如何反向工程字节并创建自己的字节Web应用程序

    iis 反向代理 应用程序 Byte, a new app from Vine cofounder Dom Hofmann, has been released on Android and iOS. ...

  2. Nginx代理支持GRPC的反向代理和负载均衡配置

    Nginx代理gRPC反向代理和负载均衡配置 linux版本安装 一.准备和安装 #指定目录安装( /home/yyt/nginxgrpc) mkdir /home/yyt/nginxgrpc cd ...

  3. 学完Nginx/OpenResty详解,反向代理与负载均衡配置,能涨薪多少

    反向代理与负载均衡配置 接下来介绍Nginx的重要功能:反向代理+负载均衡.单体Nginx的性能虽然不错,但也是有瓶颈的.打个比方:用户请求发起一个请求,网站显示的图片量比较大,如果这个时候有大量用户 ...

  4. 【笔记】openwrt - nginx编译、配置反向代理(https下netdata不显示)

    文章目录 # 完整交叉编译 # 完整交叉编译ssl # SDK编译 # 配置反向代理 # 群晖内置nginx配置 # 完整交叉编译 参考:https://servertesa.wordpress.co ...

  5. Nginx反向代理、使用OneinStack配置Nginx、多网站配置、多域名配置

    文章目录 一.卸载原装Nginx 二.通过 OneinStack 安装 Nginx 三.创建 vhost 四.按照提示选择或输入相关信息 文章PDF下载 配不好Nginx,誓不罢休 本教程适用于 不会 ...

  6. Nginx反向代理以及负载均衡配置

    一 .nginx 的优缺点: nginx 相对 apache 的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则 ...

  7. nginx——反向代理,https加密证书,重定向

    反向代理 准备: 反向代理的实现要准备两台虚拟机,一台模拟真实服务器,一台作为代理服务器,在这两台虚拟机都安装nginx,详见nginx--版本的热省级和版本回退中的安装配置,两台虚拟机安装的参数一样 ...

  8. squid 3 反向代理 缓存服务器 安装配置精华指南 by lbj

    squid-3.0.STABLE21 安装配置 by lbj 作用:作为反向代理/缓存服务器 系统:redhat linux 企业版 5.4 linux 要有gcc编译器,使用squid-3.0.ST ...

  9. frp使用反向代理实现https协议

    注意服务端和客户端的版本是需要一致的 如只有一端不知道版本可以进入目录通过./frps -v或者./frpc -v查看版本号 对于没有使用过frp的,可以看我之前写 树莓派实现内网穿透的那篇博客 1. ...

  10. Nginx的反向代理与负载均衡--配置Nginx

    前言 Nginx 是一个非常轻量级的服务器,他虽轻但是他最大的优点就是可以承载大量的并发,所以说一般的话很少有用 Node 直接去做服务器让用户去访问的,因为 Node 本身就需要做非 常非常多的事情 ...

最新文章

  1. docker volume(数据卷)是什么?(就是在宿主机上挂载的共享文件目录)
  2. ResNet学习笔记
  3. ubuntu修改pip的官方源为豆瓣源
  4. 【转】 Linux内核中读写文件数据的方法--不错
  5. 使用DbContextPool提高EfCore查询性能
  6. Unity3D资源热更新(一)
  7. 89C51使用ADC0808模数转换
  8. DDoS攻击类型和缓解手段
  9. 解决问题multiply defined
  10. 《平凡的世界》读后感 — 孙少平篇
  11. 在计算机领域做研究的一些想法
  12. neo4j之cypher使用文档
  13. 水表读数图解_水表怎么看,教你轻松看懂水表读数
  14. CortexM4内核Stm32-HAL_Init()及HAL_InitTick(TICK_INT_PRIORITY()详解——Systick中断优先级
  15. Continued Fraction(https://acs.jxnu.edu.cn/problem/ICPCJX2021B)
  16. 长尾关键词优化排名-文章页优化决定效果!
  17. Linux系统调用七、与文件权限有关的系统API串讲
  18. iPhone外接闪光灯: 狗仔队必备
  19. GIMP - 免费开源的图像处理软件,功能强大,被称为 Photoshop 的优秀替代品
  20. Ubuntu20.04 虚拟显示器配置,解决Ubuntu无显示器时nomachine/vnc/Teamviwer等远程终端桌面卡顿问题

热门文章

  1. 索益Mike的excel商品操作
  2. Eclipse主题设置方法(系统主题设置、自行下载主题设置)
  3. .Net Core报“‘GB2312‘ is not a supported encoding name. For information on defining a custom encod”的错误
  4. #笔记2021-08
  5. 锁定文件失败 打不开磁盘“E:\HP02\HP01-cl1.vmdk”或它所依赖的某个快照磁盘。 模块“Disk”启动失败。 未能启动虚拟机
  6. qt设置文本背景透明_QT QWidget设置窗体透明度方法汇总
  7. 原生mysql 怎么创表_Mysql的基础使用之SQL原生语句的使用:表的 创建 删除 修改 (一)...
  8. 风压和功率计算公式轴流式_这是你见过最全的风机计算公式
  9. java yuv 裁剪480480_对android录制的NV21视频数据进行旋转(90,180,270)与剪切
  10. simulink中if模块_Simulink与圈复杂度