nginx代理wss和https

nginx启用ssl

yum install openssl openssl-devel -y

./configure --prefix=/usr/local/nginx --with-http_ssl_module


img]http://dl2.iteye.com/upload/attachment/0128/9904/e0b62951-a384-3178-a74c-2fcc341c2974.png[/img]

证书生成参考
[url]http://blog.csdn.net/weixin_35884835/article/details/52588157[/url]
# 1、首先,进入你想创建证书和私钥的目录,例如:
cd /etc/nginx/

# 2、创建服务器私钥,命令会让你输入一个口令:
openssl genrsa -des3 -out server.key 1024

# 3、创建签名请求的证书(CSR):
openssl req -new -key server.key -out server.csr

# 4、在加载SSL支持的Nginx并使用上述私钥时除去必须的口令:
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key


# 5、最后标记证书使用上述私钥和CSR:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt


nginx配置:

upstream mybackend {
server 192.168.62.128:3000;
}
server {
listen 443 ssl;
#server_name localhost;
server_name bellard.org;

ssl_certificate /opt/meituan/qemu/deobfuscated/ssl/server.crt;
ssl_certificate_key /opt/meituan/qemu/deobfuscated/ssl/server.key;

ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;

ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

location / {
# root html;
root /opt/meituan/qemu;
index index.html index.htm;
}
location /tap {
# switch off logging
access_log off;

# redirect all HTTP traffic to localhost:8080
#proxy_pass http://192.168.62.128:3000;
#proxy_pass http://bellard.org:3000;
proxy_pass http://mybackend;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# WebSocket support (nginx 1.4)
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}

参考
[url]http://blog.csdn.net/chopin407/article/details/52937645[/url]
[url]https://github.com/nicokaiser/nginx-websocket-proxy/blob/df67cd92f71bfcb513b343beaa89cb33ab09fb05/simple-wss.conf[/url]
[url]https://stackoverflow.com/questions/12102110/nginx-to-reverse-proxy-websockets-and-enable-ssl-wss[/url]
network-websockets.js
改成
tuntapWS_connection = new WebSocket('wss://192.168.62.128/tap', []);


tuntapWS_connection = new WebSocket('wss://bellard.org/tap', []);


/etc/hosts
192.168.62.128 bellard.org
把jslinux从http切换成https,顺带ws换成wss


注意,如果是域名访问的,就把ip都写成域名,否则可能认证错误
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值