我正在尝试部署我的第一个Clojure WebSocket应用程序,我想我已经接近了。我在本地获得了良好的响应,看起来端点想要面对外部世界(我看到端口在我运行class [I
时打开),但没有响应。我确定netstat
中的设置不正确。
我目前已经在此服务器上托管了其他几个网站,只是想添加必要的配置来获取nginx
与我的应用程序通信的请求。
以下是我现在使用的位置条目:
wss://domain.com:8001
有人能指点我正确的方向吗?我的猜测是我在配置中实际上有太多,而且可能不正确。
** 编辑: **对于感兴趣的各方,我在gist中提出了我的工作配置(基于Erik Dannenberg的答案)。
答案 0 :(得分:1)
你缺少两个标题,一个最小的工作配置:
location / {
proxy_pass http://backend;
proxy_http_version 1.1;
# add the two below
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
# optional, but helpful if you run into timeouts
proxy_read_timeout 86400;
}