加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

node.js – 带有NGINX proxy_pass的Webpack Dev Server

发布时间:2020-12-13 21:06:11 所属栏目:Nginx 来源:网络整理
导读:我正在尝试让webpack-dev-server在Docker容器内运行,然后通过NGINX主机访问它.最初的index.html加载,但与dev服务器的Web套接字连接无法连接. VM47:35 WebSocket connection to ws://example.com/sockjs-node/834/izehemiu/websocket failed: Error during We

我正在尝试让webpack-dev-server在Docker容器内运行,然后通过NGINX主机访问它.最初的index.html加载,但与dev服务器的Web套接字连接无法连接.

VM47:35 WebSocket connection to ‘ws://example.com/sockjs-node/834/izehemiu/websocket’ failed: Error during WebSocket handshake: Unexpected response code: 400

我正在使用以下配置.

map $http_upgrade $connection_upgrade {
  default upgrade;
  ''      close;
}

upstream webpack_dev_server {
  server node;
}

server {
  server_name _;
  listen 80;
  root /webpack_dev_server;

  location / {
    proxy_pass http://webpack_dev_server;
  }

  location /sockjs-node/ {
    proxy_pass http://webpack_dev_server/sockjs-node/;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $host;  # pass the host header - http://wiki.nginx.org/HttpProxyModule#proxy_pass

    proxy_http_version 1.1;  # recommended with keepalive connections - http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_http_version

    # WebSocket proxying - from http://nginx.org/en/docs/http/websocket.html
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
  }
}
最佳答案
代理传递应该是你的webpack-dev-server容器的ip和端口,你需要关闭proxy_redirect;

location /sockjs-node {
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header Host $host;

    proxy_pass http://node:8080; 

    proxy_redirect off;

    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

另外,不要忘记将poll添加到webpack-dev中间件

  watchOptions: {
    aggregateTimeout: 300,poll: 1000
  }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读