在 IIS 上配置反向代理并强制 HTTPS 访问可以通过以下步骤实现:
Application Request Routing (ARR) 是 IIS 的一个扩展模块,用于配置反向代理。
步骤 1: 创建重定向规则点击 添加规则 > 空白规则。命名规则为 HTTP to HTTPS Redirect。
步骤 2: 设置匹配 URL模式: .* 勾选 使用正则表达式。
步骤 3: 添加条件点击 添加条件,设置 条件输入 为 {HTTPS}。模式: ^OFF$这样确保只在请求未通过 HTTPS 时触发此规则。
步骤 4: 设置重定向操作动作类型: 选择 重定向。重定向 URL: 输入 https://{HTTP_HOST}{REQUEST_URI} {HTTP_HOST} 会使用请求的域名。{REQUEST_URI} 会包含请求的路径和查询字符串部分。重定向类型: 选择 永久 (301)。
配置反向代理规则:
步骤 1: 创建反向代理规则再次在 URL 重写 中,点击 添加规则 > 空白规则。命名规则为 Reverse Proxy to 127.0.0.1:8080。
步骤 2: 设置匹配 URL模式: ^(.*)$勾选 使用正则表达式。步骤 3: 设置重写操作动作类型: 选择 重写。重写 URL: 输入 http://127.0.0.1:8080/{R:1}保持查询字符串: 勾选。
调整规则顺序确保 HTTP to HTTPS Redirect 规则位于 Reverse Proxy to 127.0.0.1:8080 规则的前面。规则执行的顺序非常重要。
http://yourdomain.com
时,首先触发重定向规则,将请求重定向到 https://yourdomain.com
。http://127.0.0.1:8080
。完成这些调整后,再次测试访问,你应该看到正确的 HTTPS 重定向和反向代理行为。
© 2024 zhengzhuo. All Rights Reserved.