IIS 502 - Web 服务器在充当网关或代理服务器时收到无效响应

IIS 502 - Web 服务器在充当网关或代理服务器时收到无效响应

我在 IIS 服务配置方面遇到了问题,基本上当我们想要建立 https 连接时会收到 502 错误。说实话,我是一名开发人员,不是系统管理员,但我正在帮助同事解决这个问题。

当前设置了以下参数:

服务器名称:XXX Web 服务器:IIS(Windows Server 2012)(HTTP)仅用于测试前端 - Angular / 端口 80
后端 - Java / 端口 8787

(HTTPS)这是目标配置。前端 - Angular / 端口 443 后端 - Java / 端口 9787

仅有的https://XXX:443/* 适用于最终用户

因此,在开发环境中没有问题,因为所有端口都可供所有人使用。在生产中,最终用户只能访问一个端口。据说如果我们在 IIS 中正确配置代理,我们可以使用它来调用后端。

代理适用于 HTTP(端口 80),但对于 HTTPS(443),我们收到错误“502 - Web 服务器在充当网关或代理服务器时收到无效响应”

这是 HTTPS 的 web.config

<?xml version="1.0" encoding="UTF-8"?>
  <configuration>
     <system.webServer>
          <rewrite>
       <rules>
           <rule name="ReverseProxyInboundRule1" stopProcessing="true">
               <match url="(.*)" />
               <action type="Rewrite" url="https://localhost:9787/iam-b2e-backend/{R:1}/{R:1}" />
           </rule>
       </rules>
   </rewrite>
  </system.webServer>
</configuration>

对于 HTTP

 <?xml version="1.0" encoding="UTF-8"?>
 <configuration>
  <system.webServer>
   <rewrite>
       <rules>
           <rule name="ForwardProxy">
               <match url="(.*)" />
               <action type="Rewrite" url="http://localhost:8787/iam-b2e-backend/{R:1}" />
           </rule>
       </rules>
   </rewrite>
 </system.webServer>
</configuration>

相关内容