我正在尝试使用 ActionCable(主要是复制DHH 示例)并试图让它在具有瘦(在端口 8443 上)和 nginx 的 Ubuntu 服务器上运行。在本地一切正常,但是,当我尝试在实时服务器上代理它时,我收到此错误响应:failed: Error during WebSocket handshake: Unexpected response code: 301
.
这是我的 nginx 配置的相关位:
server {
listen 80;
server_name _not_;
root /home/ubuntu/www/;
}
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream websocket {
server 127.0.0.1:8443;
}
server {
listen 80;
...
location /websocket/ {
proxy_pass http://127.0.0.1:8443;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_redirect off;
}
...
}
我在这里与 nginx 有点格格不入——我错过了什么或出错了?