Nginx proxy_pass警报握手失败:SSL

时间:2020-09-08 15:21:43

标签: nginx proxy cloud

我在GKE入口后面有一个nginx服务器作为后端来提供静态内容(角度)。

我试图在nginx自身上建立路由,以将流量路由到另一个外部服务(云功能)。

使用以下重定向进行操作时:

server {
    listen 8080;
    server_name main-app.example.com

    location /service {
      return 307 https://cloud-function-url.example.com$request_uri;
    }
}

它基本上可以正常工作,我的角度应用程序将/ service的请求重定向到云函数url,并假设我已在此云函数上启用了cors。

我想在代理请求而不是重定向请求时执行相同的操作,以消除cors钩子。 所以我尝试将location指令更新为:

location /service {
  proxy_pass  http://cloud-function-url.example.com;
}

这在SSL问题上失败,并显示错误

routines:ssl3_read_bytes:sslv3 alert handshake failure:SSL alert number 40) while SSL handshaking to upstream

我尝试过许多有关设置特定标头的建议,但是没有运气。 我觉得我缺少基本的东西。 任何帮助都会得到体现。

10x

1 个答案:

答案 0 :(得分:0)

我已经解决了此问题,方法是将路由设置为其他公共网址,即云运行网址而不是云dns(自定义域)。 10x