一、环境:
微信开发者工具版本:stable 2.01.25 10280
服务器信息:
nginx配置
server {
listen 443 ssl;
server_name ynxcserver.iigame.top;
ssl_certificate /data/httpskey/iigame.top/iigame.top.cer.pem;
ssl_certificate_key /data/httpskey/iigame.top/iigame.top.key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
# 使用微信推荐的加密套件
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
ssl_prefer_server_ciphers on;
# 添加这些兼容性选项
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_session_tickets off;
access_log /data/test/nginx_log/ynxcserver/access.log combined;
error_log /data/test/nginx_log/ynxcserver/error.log debug;
# 添加一个纯HTTP端点,不涉及WebSocket
location /test {
return 200 "OK\n";
add_header Content-Type text/plain;
}
# WebSocket 代理配置 - 关键修改在这里
location / {
proxy_pass http://127.0.0.1:30001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 添加WebSocket特定头
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
proxy_read_timeout 300s;
proxy_buffering off;
}
# 可选:添加健康检查端点
location /health {
access_log off;
return 200 "healthy\n";
add_header Content-Type text/plain;
}
}
ip地址:wss://47.97.22.92:30001
域名:wss://ynxcserver.iigame.top
二、情况说明:
1,游戏通过cocos2d引擎直接浏览器运行或打包在浏览器运行,可以正常通过ip地址或域名地址访问服务器进行游戏。
2,游戏通过cocos2d打小程序包上传到 微信开发者工具,使用ip地址可运行游戏,使用域名会报错请求失败。
3,报错截图如下
