NoteZ_技术博客 NoteZ_技术博客
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)

NoteZ_技术博客

前端界的小学生
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)
  • Web技术

  • Git笔记

  • Linux文档

  • Markdown

  • Nginx文档

    • Nginx 常用配置清单
    • Nginx 配置404错误页面重定向
    • Nginx 配置文件(nginx.conf)
    • Nginx二级目录反向代理网站
    • Nginx出现403跨域后端解决方法
    • Nginx访问权限控制
    • windows下安装nginx和基本配置
    • 在 Linux 下配置 Nginx 方法(启动、停止与重启)
    • 基于wujie(无界)和 Nginx 同一端口下部署多个 Vue 项目
    • 解决 Nginx 下 history 模式面刷新空白(404)问题
    • nginx配合webpack打包实现二级目录访问
    • Nginx通过二级目录映射不同的反向代理
    • Nginx配置WebSocket
      • 一、对wss与nginx代理wss的理解
      • 二、Nginx 支持websocket的配置
    • Nginx配置维护页面
    • Nginx安装ngx_http_ssl_module模块使其支持SSL_https
  • Npm笔记

  • 技术文档

  • 其他文档

  • 前端开发
  • Nginx文档
NoteZ
2024-02-20
目录

Nginx配置WebSocket

# 一、对wss与nginx代理wss的理解

  1. wss协议实际是websocket+SSL,就是在websocket协议上加入SSL层,类似https(http+SSL)。
  2. 利用nginx代理wss【通讯原理及流程】 客户端发起wss连接连到nginx nginx将wss协议的数据转换成ws协议数据并转发到Workerman的websocket协议端口 Workerman收到数据后做业务逻辑处理 Workerman给客户端发送消息时,则是相反的过程,数据经过nginx/转换成wss协议然后发给客户端

# 二、Nginx 支持websocket的配置

server {
      listen   80;
      server_name 域名;
	    access_log  /var/log/nginx/test_websocket.access.log  main;
      location / {
				proxy_pass   http://127.0.0.1:8080/; # 代理转发地址
				proxy_http_version 1.1;
        proxy_read_timeout   3600s; # 超时设置
        # 启用支持websocket连接
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
      }
      location /upload { # 静态资源地址
            root   /mnt/resources;        
      }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

重要的是这两行,它表明是websocket连接进入的时候,进行一个连接升级将http连接变成websocket的连接。

proxy_set_header Upgrade $http_upgrade;
 
proxy_set_header Connection "upgrade";
1
2
3

proxy_read_timeout; 表明连接成功以后等待服务器响应的时候,如果不配置默认为60s;

proxy_http_version 1.1; 表明使用http版本为1.1

#Nginx#WebSocket
上次更新: 2024/02/20, 17:31:36
Nginx通过二级目录映射不同的反向代理
Nginx配置维护页面

← Nginx通过二级目录映射不同的反向代理 Nginx配置维护页面→

最近更新
01
Gitea数据备份与还原
03-10
02
Linux 中使用 rsync 同步文件目录教程
03-10
03
Linux 使用 rsync 互相传输同步文件的简单步骤
03-08
更多文章>
Theme by Vdoing | Copyright © 2019-2025 NoteZ,All rights reserved | 冀ICP备2021027292号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式