尝试连接daphne websocket nginx时收到502

我得到

Error during WebSocket handshake: Unexpected response code: 502

当尝试连接到wss://my.domain.com/ws/

daphne入口点:

daphne -e ssl:443:privateKey=key.pem:certKey=certKey.pem myapp.asgi:application

我的nginx conf:

upstream channels-backend {
  server 0.0.0.0:8001;
} 
server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  server_name servername;
  server_tokens off;
  ssl_certificate certKey.pem;
  ssl_certificate_key key.pem;
  ...
  location /ws/ {
    rewrite ^(.*)$ $1 break;
    proxy_pass http://channels-backend;
    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;
  }
}

在我的前端:

let wsStart = 'ws://';
  if (loc.protocol === 'https:') {
    wsStart = 'wss://';
  }
const endpoint = '${wsStart}my.domain.com/ws/';
const socket = new WebSocket(endpoint);

如果在我的daphne入口点中仅添加-b 0.0.0.0:8001可以正常工作并通过ws://进行连接,但是我需要通过wss://

进行连接

有什么想法吗?

hohoman610 回答:尝试连接daphne websocket nginx时收到502

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2935565.html

大家都在问