注册
登录
提问时间:2016/10/8 9:10:38
nginx配置
{ listen 443;
server_name test.microdci.cn;
ssl on;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_certificate /Users/reign/Documents/java_workspace/stock/dci-appinterface/cers/server.crt;
ssl_certificate_key /Users/reign/Documents/java_workspace/stock/dci-appinterface/cers/server.key;
ssl_client_certificate /Users/reign/Documents/java_workspace/stock/dci-appinterface/cers/ca.crt;
ssl_verify_client on;


ssl_session_timeout 5m;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+PKCS12:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
root /Users/reign/Documents/html/testhttps/;
location / {
index index.html;
proxy_pass https://api.microdci.cn:8899;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
#proxy_set_header Via "nginx";
}
jetty同时配置了ssl,但是java去调用的时候却遇到502 Bad GateWay
如果不去代理,可以直接访问nginx的静态文件信息,代理后报错日志
server: test.microdci.cn, request: "GET /testssl HTTP/1.1", upstream: "https://[::1]:8899/testssl", host: "http://test.microdci.cn"
2015/05/27 09:55:48 [error] 1791#0: *177 SSL_do_handshake() failed (SSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol) while SSL handshaking to upstream, client: 127.0.0.1, server: test.microdci.cn, request: "GET /testssl HTTP/1.1"
1楼(未知网友)

我今天也遇到个类似的问题,我来说说我的情况:
上次升级nginx时候一不小心把Access-Control-Allow-Origin的设置给删了,今天早上因为业务给我打电话说报502,我看下是跨域的问题。我又把Access-Control-Allow-Origin加上了,其他配置都没动,然后就reload配置。在我本机上访问服务器测试了一下没问题,就回复业务搞完了。但没过多久业务打电话跟我说说https可以访问但是http访问却报502!

然后我就改了下80端口的配置:由以前的index.html刷新改成用rewrite实现;不行又改成return实现.........

其实我早就怀疑是nginx配置加载出了问题,但问题是这是生产环境,虽说是集团内部使用的,但也不能这么就停了,反正https是可用的!就这么接着捣鼓配置,搞了三四个小时没搞定,搞得我是百思不得其解!四点的时候不得不干别的工作去了。

就在刚刚我要下班的时候突然想起这事了,我就连上服务器 停止后,重启nginx,问题解决!
立即注册站大爷用户,免费试用全部产品
立即注册站大爷用户,免费试用全部产品