我将Nginx用作转发代理(我知道它不是为它构建的,但这是一个特定的用例),并且除了websocket之外,其他所有方法都可以使用。我尝试使用最低配置:
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
gzip on;
server {
listen 80;
error_log /var/log/frontend-error.log debug;
access_log /var/log/frontend-access.log;
root /var/www;
#index index.php;
location / {
resolver 8.8.8.8;
proxy_pass $scheme://$http_host$uri$is_args$args;
}
}
}
也尝试使用特定位置进行Websocket连接,但不起作用:
location /ws {
proxy_pass http://192.168.9.9:6661;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
每次浏览器(Chrome)给我这个错误:
与'ws:// whatever / ws'的WebSocket连接失败:通过代理服务器建立隧道失败。
有人尝试过吗?下一步是数据包跟踪...