跳到主要内容
PHP

laravel Reverb端口配置区别

管

管理员

PHP

2025年03月21日 1,172 次阅读
本页目录

在 Reverb 这个 WebSocket 服务器的配置中,涉及 两个不同的端口配置,分别是 REVERB_SERVER_PORT 和 REVERB_PORT,它们的作用不同:

1. REVERB_SERVER_PORT(服务端监听端口)

  • 这个端口决定 Reverb 服务器本身运行在哪个端口,即 Laravel 内置的 WebSocket 服务器监听的端口。
  • 默认是 8080,即 0.0.0.0:8080,允许所有网络接口访问。
  • 你可以通过 .env 文件或者 php artisan reverb:start --port=9000 来修改它,例如:
    REVERB_SERVER_HOST=0.0.0.0
    REVERB_SERVER_PORT=9000

这样,Reverb 服务器就会监听 `0.0.0.0:9000`。

2. REVERB_PORT(应用程序连接的端口)

  • 这个端口是 Laravel 应用 用于广播 WebSocket 消息时连接的端口。
  • 通常,它指向一个 对外暴露的 WebSocket 地址,可能是负载均衡器或代理服务器。
  • 例如,在生产环境中:
    REVERB_HOST=ws.laravel.com
    REVERB_PORT=443

这表示 Laravel 应用会连接 `wss://ws.laravel.com:443`,而 `443` 是标准的 HTTPS WebSocket 端口。

3. 总结两者的区别

配置项 作用 默认值 可能的修改方式
REVERB_SERVER_PORT Reverb 服务器监听的端口 8080 通过 .env 或 php artisan reverb:start --port=9000
REVERB_PORT Laravel 连接 WebSocket 服务器的端口 无 由 Laravel 应用使用,通常是 443(生产环境)或 8080(开发环境)

4. 示例场景

  • 本地开发
    • 你可以直接运行:
    php artisan reverb:start

这样,Reverb 服务器会监听 `0.0.0.0:8080`,Laravel 也会连接 `ws://localhost:8080`。
  • 生产环境
    • 你的 Reverb 服务器可能运行在 8080 端口,但通过 Nginx 代理 提供 wss://ws.laravel.com:443:
    REVERB_SERVER_HOST=0.0.0.0
    REVERB_SERVER_PORT=8080
    REVERB_HOST=ws.laravel.com
    REVERB_PORT=443
  • Nginx 代理示例:
    server {
        listen 443 ssl;
        server_name ws.laravel.com;

        location / {
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "Upgrade";
        }
    }
  • 这样,外部用户访问 wss://ws.laravel.com:443,而 Reverb 服务器实际运行在 127.0.0.1:8080。

简单来说:

  • REVERB_SERVER_PORT 负责 Reverb 服务器监听在哪个端口。
  • REVERB_PORT 负责 Laravel 连接哪个 WebSocket 端口,可能是代理服务器或负载均衡器的端口。

Related

相关文章

同分类文章 →
2026年07月11日 PHP

laravel什么样的方法适合放在模型中?什么适合用专门的服务类? cachedFavIds适合放在模型中吗?

一、适合放在模型中的方法Laravel 采用 ActiveRecord 风格,模型本身就是"数据 + 围绕该数据的操作"的载体。以下几类方法适合放模型: 关联关系:belongsTo、morphTo、hasMany 等。如 UserFav::userfavable()、UserFav::us

2026年04月13日 PHP

Vue3 静态文件放在同域名 Laravel 项目下

核心思路是:Vue3 构建后的静态文件放到 Laravel 的 public/ 目录下,通过 Laravel 路由的 catch-all 机制让 SPA 的前端路由正常工作。方案说明以 xx.com/admin 为例,整体架构如下:请求流程:xx.com/admin/* → Laravel

2025年08月18日 PHP

Laravel Eloquent 中可以通过静态方式调用的方法

在 Laravel Eloquent 中,可以通过静态方式调用的方法包括:1. 查询作用域 (Scopes)// 可以静态调用UserComment::active()->get();UserComment::where('status', 1)->first();2. Eloquent 内置的查询方法UserComment::fi

WeChat

扫码加我微信

微信二维码