当前位置: 首页 > news >正文

IIS 反向代理模块: URL Rewrite 和 Application Request Routing (ARR)

需要设置iis反向代理的场景其实挺多的。例如websocket、Server Sent Events(SSE) 都需要反向代理。

对于需要临时放公网访问的应用,直接运行127.0.0.1的开发环境,然后通过反向代理访问127.0.0.1就可以了,省去麻烦的iis设置。

IIS 实现反向代理功能,必须同时安装 URL Rewrite 和 Application Request Routing (ARR) 两个模块,缺一不可。

  • URL Rewrite 负责:定义反向代理规则。解析传入的请求 URL,根据预定义的规则将请求重写或重定向为新的目标 URL(通常是后端服务器的 URL)。
  • ARR 负责:接收 URL Rewrite 转发的请求,并将这些请求代理到后端服务器处理。

    默认IIS没有这两个模块,需要自己下载安装

    ARR(Application Request Routing Cache):

    https://www.iis.net/downloads/microsoft/application-request-routing

    URL重写:

    https://www.iis.net/downloads/microsoft/url-rewrite

 

具体规则配置可以通过界面配置也可以直接在web.config上配置,一般来说web.config配置更直观

应用场景一:通过反向代理访问 127.0.0.1:xxxx 。

step1:如上图安装了 URL rewrite 和 ARR,并启动了ARR的Enable proxy。

step2:在IIS上新建站点,绑定好域名,本地物理路径

step3:在本地物理路径跟目录下创建web.config 内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration><system.webServer><proxy enabled="true" preserveHostHeader="true" /><rewrite><rules><rule name="ReverseProxyInboundRule1" stopProcessing="true"><match url="(.*)" /><action type="Rewrite" url="http://127.0.0.1:8080/{R:1}" /></rule></rules></rewrite></system.webServer>
</configuration>

如果是绑定了域名,还需要在settings.py 中配置:

ALLOWED_HOSTS = ['mydomain.com', '公网IP', '127.0.0.1','localhost']

重启站点。

这个配置对websocket、Server Sent Events(SSE)都直接可用。

http://www.lryc.cn/news/431717.html

相关文章:

  • 企业在选择CRM系统时需要注意哪些问题呼叫系统外呼系统部署搭建
  • 数据库水平分表方案
  • MySQL表操作及约束
  • Redis 键值对操作全攻略
  • 【C语言】---- return的作用
  • 如何制作新生资料收集系统?
  • pyecharts可视化数据大屏
  • uniapp - H5 在 UC 浏览器中返回上一页失效的解决方案
  • 利用KMeans重新计算自己数据集的anchor
  • 分类任务实现模型集成代码模版
  • 从Milvus迁移DashVector
  • 彻底改变计算机视觉的 Vision Transformer (ViT) 综合指南(视觉转换器终极指南)
  • vue3 v-bind=“$attrs“ 的一些理解,透传 Attributes相关说明及事例说明
  • 鸿蒙开发基础知识-页面布局【第四篇】
  • 用CSS实现前端响应式布局
  • 【docker】docker启动sqlserver
  • Python爬虫01
  • 关于vue项目启动报错Error: error:0308010C:digital envelope routines::unsupported
  • 随笔1:数学建模与数值计算
  • SDN架构详解
  • platform框架
  • 零成本搞定静态博客——十分钟安装hugo与主题
  • windows C++ 并行编程-转换使用取消的 OpenMP 循环以使用并发运行时
  • 经验笔记:跨站脚本攻击(Cross-Site Scripting,简称XSS)
  • 演示:基于WPF的DrawingVisual和谷歌地图瓦片开发的地图(完全独立不依赖第三方库)
  • 【C++】static作用总结
  • 视频提取字幕的软件有哪些?高效转录用这些
  • (4)SVG-path中的椭圆弧A(绝对)或a(相对)
  • docker国内镜像源报错解决方案
  • 《C++进阶之路:探寻预处理宏的替代方案》