Hyperf 在 NginxProxyManager 如何配置 websocket?

  • 新建代理 填写域名等服务信息,选择支持WebSockets。
  • 创建 SSL
  • 编写nginx配置
bash 复制代码
location /message.io{
    proxy_pass http://<你的ip>:<对应端口号>;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Port $server_port;
}
  • hyperf配置
  • routes.php
bash 复制代码
// 消息ws服务器
 Router::addServer('message', function () {
     Router::get('/message.io', 'App\Controller\Web\WebSocketController', [
         'middleware' => [\App\Middleware\WsAuthMiddleware::class], // ws中间件
     ]);
 });
  • server.php配置
bash 复制代码
 [
            'name' => 'message',
            'type' => Server::SERVER_WEBSOCKET,
            'host' => '0.0.0.0',
            'port' => 9502,
            'sock_type' => SWOOLE_SOCK_TCP,
            'callbacks' => [
                Event::ON_HAND_SHAKE => [Hyperf\WebSocketServer\Server::class, 'onHandShake'],
                Event::ON_MESSAGE => [Hyperf\WebSocketServer\Server::class, 'onMessage'],
                Event::ON_CLOSE => [Hyperf\WebSocketServer\Server::class, 'onClose'],
            ],
            'settings' => [
                // 心跳检测
                'heartbeat_idle_time' => 60,
                'heartbeat_check_interval' => 30,
            ],
        ],
  • 访问路径
bash 复制代码
wss://wsdev.com/message.io
相关推荐
invicinble5 小时前
对linux形成认识
linux·运维·服务器
小Pawn爷5 小时前
14.VMmare安装ubuntu
linux·运维·ubuntu
技术路上的探险家5 小时前
8 卡 V100 服务器:基于 vLLM 的 Qwen 大模型高效部署实战
运维·服务器·语言模型
有谁看见我的剑了?6 小时前
介绍一款 测试 DNS解析成功率的网站
运维
半桔6 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
绵绵细雨中的乡音6 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
HABuo6 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
Howrun7777 小时前
关于Linux服务器的协作问题
linux·运维·服务器
yunfuuwqi8 小时前
OpenClaw✅真·喂饭级教程:2026年OpenClaw(原Moltbot)一键部署+接入飞书最佳实践
运维·服务器·网络·人工智能·飞书·京东云
迎仔9 小时前
C-算力中心网络隔离实施方法:怎么搞?
运维·网络