Nginx proxy_pass警报握手失败:SSL



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

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

当使用如下重定向时:

server {
listen 8080;
server_name main-app.example.com
location /service {
return 307 https://cloud-function-url.example.com$request_uri;
}
}

它基本上可以工作,我的angular应用程序将/service的请求重定向到云函数url,假设我在这个云函数上启用了cors,一切都可以。

我想在代理请求时也这样做,而不是重定向它,以消除cors钩子。所以我尝试将位置指令更新为:

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

我试过很多关于设置特定标题的建议,但运气不好。我觉得我错过了一些基本的东西。任何帮助都会得到通知。

10倍

我通过将路由设置为不同的公共url来解决这个问题,该url是云运行url,而不是云dns(自定义域(。10倍

最新更新