NGINX Websocket和SSL配置

保利

我正在尝试设置websocket连接(wss)。我的域使用ssl(certbot),由Nginx提供支持。我不确定如何配置我的/etc/nginx/sites-available/domain.com文件。

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
...
}

我将以下内容添加到我的配置块中:

location /websocket {
    proxy_pass         https://domain.com;
    proxy_http_version 1.1;
    proxy_set_header   Upgrade $http_upgrade;
    proxy_set_header   Connection "upgrade";
    proxy_set_header   Host $host;
}

通过以下方式连接wss://domain.com/时,出现错误消息

WebSocket connection to 'wss://domain.com/' failed: 
Error during WebSocket handshake: Unexpected response code: 200

那里的大多数示例都使用nodejs框架来为其站点提供服务,但是我使用的是php。

宇宙渗透

您在提供的nginx配置中将websocket端点配置为托管在/websocket服务器内的位置,但是您尝试连接到根URL wss://domain.com

在升级之前,websocket连接是一个普通的HTTP(在这种情况下使用TLS包装器)会话,因此您必须确保用于访问服务的URL包括所有相关的路径指示符,例如wss://domain.com/websocket

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Nginx和SSL配置SocketCluster

来自分类Dev

如何配置Nginx和Node使用SSL?

来自分类Dev

Nginx SSL配置失败

来自分类Dev

Nginx SSL 配置设置

来自分类Dev

如何为WebSocket协议配置AWS ELB和Nginx?

来自分类Dev

用于 SSL PHP 站点和 Websockets WSS 的 Nginx 配置?

来自分类Dev

Nginx和SSL证书

来自分类Dev

ssl 与 apache 和 nginx

来自分类Dev

Nginx 1.6上的SSL配置

来自分类Dev

使用SSL密码连接Nginx WebSocket

来自分类Dev

用于Tornado Websocket演示的Nginx配置?

来自分类Dev

Nginx和HTTPS / SSL行为

来自分类Dev

使用Django和Node.js为Websocket设置Nginx的配置(wss://)

来自分类Dev

Nginx和uwsgi配置问题

来自分类Dev

Nginx和Unicorn基本配置

来自分类Dev

简单配置Nginx和Varnish

来自分类Dev

配置phabricator和Nginx的问题

来自分类Dev

Nginx和上游:配置失败

来自分类Dev

Nginx配置位置和索引

来自分类Dev

nginx配置域名和ip

来自分类Dev

用于SSL的Laravel Forge Nginx配置

来自分类Dev

用于SSL的Laravel Forge Nginx配置

来自分类Dev

Nginx配置SSL负载均衡器

来自分类Dev

如何配置 Nginx 相互 SSL 的密钥库?

来自分类Dev

用于本地webapp和websocket的Nginx设置

来自分类Dev

如何正确配置 nginx ssl 以使用 docker-compose 和 django-channel ssl 套接字

来自分类Dev

Django + uWSGI + Nginx + SSL-工作配置请求(强调SSL)

来自分类Dev

使用Nginx的SSL _和www重定向

来自分类Dev

使用 NGINX 和 SSL 时的问题