Swoole配置ssl(支持wss)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swoole配置ssl(支持wss)相关的知识,希望对你有一定的参考价值。
参考技术A 1、编译安装swoole。开启 openssl-ssl
测试 php --ri swoole
2、创建websocket服务
3、初始化ws服务:
4、前端(域名不是ip):
nginx配置支持https和wss(websocket)协议
server { listen 80; listen 443 ssl http2; server_name lyz810.com; root /website/lyz810-main; ssl_certificate certificate/lyz810.com.crt; ssl_certificate_key certificate/lyz810.com.key; location /websocket/ { internal; if ( $http_sec_websocket_protocol = "" ) { return 400; } proxy_pass http://127.0.0.1:$arg_port; proxy_http_version 1.1; proxy_set_header X-Client-IP $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 300s; } location /chatRoom { rewrite .* /websocket/?port=8100; } location /chatRobot { rewrite .* /websocket/?port=8101; } }
服务器内部起了2个websocket服务,分别监听8100、8101端口nginx根据访问不同的location,选择代理到那个ws服务商
/websocket/是个内部location,直接访问会报错
参考链接:
http://www.cnblogs.com/weidiao/p/7389744.html
http://www.cnblogs.com/mzsg/p/5623494.html
以上是关于Swoole配置ssl(支持wss)的主要内容,如果未能解决你的问题,请参考以下文章
微信小程序之swoole/WebSocket创建聊天室(php)
docker ubuntu swoole fatal error: openssl/ssl.h: No such file or directory