我在Weblogic服务器上有一个Web应用程序,它通过HTTPS接受自签名证书的连接。 Weblogic服务器URL上的Web App https://server1.com:7122/webapp1/
我还在同一台服务器上安装了ngnix,其中包含verisign证书,该证书充当服务器上所有Web应用程序的前端。 Nginx服务器网址https://server1.com:443/
我希望用户访问Weblogic上的webapp,以便通过nginx访问,因为端口7122被阻止从外部访问。我添加了以下规则
location /webapp1 {
proxy_pass https://server1.com:7122;
}
我可以通过Nginx访问所有其他应用程序但是对于webapp1我收到以下错误
[error] 6680#10132: *147 SSL_do_handshake() failed (SSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol) while SSL handshaking to upstream, client: 10.62.144.39, server: server1.com .....
答案 0 :(得分:6)
在nginx服务器上,检查是否有任何错误。
openssl s_client -connect server1.com:7122;
如果有效,请尝试不使用https
的proxy_passproxy_pass http://server1.com:7122;
由于Weblogic服务器只能在内部访问,因此需要对其进行SSL处理,因为这会增加额外的SSL开销,必须加密&解密2次。