logo

应用

概述

Forge 为运行 Laravel 的应用程序提供一流的支持,使您能够快速切换和配置

  • Laravel 任务调度器
  • Laravel Horizon 守护进程
  • Laravel Octane 守护进程
  • Laravel Reverb 守护进程
  • Inertia.js 服务器端渲染 (SSR) 守护进程

Laravel Panel

为此,Forge 会解析应用程序的 composer.jsoncomposer.lock 文件,并检查上述软件包的存在和版本。

Laravel 调度器

您可以通过“Laravel 调度器”切换快速启用或禁用 Laravel 调度器。Forge 将为您创建所需的 调度器

调度器配置

Forge 将自动配置调度器,使其使用网站配置的 PHP 版本每分钟运行一次。

Laravel Horizon

您可以通过“Laravel Horizon”切换快速启用或禁用 Laravel Horizon 守护进程。Forge 将为您创建所需的 Horizon 守护进程。

如果网站的部署脚本不包含 horizon:terminate 命令,Forge 将自动为您追加它。

转换现有守护进程

如果您的服务器已配置了运行 Laravel Horizon 的守护进程,Forge 将提供为您转换守护进程的选项。此过程将网站 ID 和守护进程 ID 链接在一起,使 Forge 能够为您管理守护进程。

Laravel Octane

您可以通过“Laravel Octane”切换快速启用或禁用 Laravel Octane 守护进程。Forge 将为您创建所需的 Octane 守护进程并安装 Octane 依赖项。

启用 Octane 守护进程时,Forge 会要求您提供要用于 Octane 服务器的端口号以及您选择的 Octane 服务器。

Enabling Laravel Octane

如果网站的部署脚本不包含 octane:reload 命令,Forge 将自动为您追加它。

启用 Octane 之前

在启用 Laravel Octane 之前,您必须将 OCTANE_SERVER 环境变量设置为您选择的 Octane 服务器。

转换现有守护进程

如果您的服务器已配置运行 Laravel Octane 的守护进程,Forge 会提供将守护进程转换为您的选项。此过程将站点 ID 和守护进程 ID 链接在一起,允许 Forge 为您管理守护进程。

Laravel Reverb

确定用于托管 Laravel Reverb 的正确服务器类型取决于您的配置要求。您可以使用下表来帮助您做出决定

配置应用程序服务器Web 服务器
与 Laravel 应用程序一起的 Reverb 服务器
专用 Reverb 服务器
带有 Pulse 的专用 Reverb 服务器
带有 Pulse(单独的摄取和/或数据库)的专用 Reverb 服务器

配置好您首选的服务器后,您应该添加一个新站点从您选择的版本控制提供商安装您启用了 Reverb 的 Laravel 应用程序

现在,您可以通过 Forge 应用程序面板中的“Laravel Reverb”切换快速启用或禁用 Laravel Reverb。启用 Reverb 时,Forge 将创建 Reverb 守护进程,安装所需的依赖项,并配置服务器以获得最佳性能。

此外,Forge 会提示您提供根据您的要求设置服务器所需的额外信息。

Enabling Laravel Reverb

  • 公共主机名:用于更新站点的 Nginx 配置,允许服务器在给定的主机名上接受 Reverb 连接。Forge 默认使用站点的当前主机名的子域名,但您可以自由定制此值。例如,如果站点的主机名是 example.com,Forge 将默认 Reverb 的主机名为 ws.example.com
  • 端口:用于指示 Reverb 守护进程应该在哪个服务器端口上运行。Forge 将将给定公共主机名的请求代理到此端口。
  • 最大并发连接数:Reverb 服务器可以处理的连接数将取决于服务器上可用资源的组合以及正在处理的连接数和消息数。您应该输入服务器在阻止新连接之前可以管理的连接数。此选项将更新服务器允许的打开文件限制、Nginx 允许的打开文件和连接限制,并在需要时安装 ev 事件循环。

Reverb 主机名配置

Forge 通过在您现有站点的 Nginx 配置中添加一个新的服务器块来确保在 Reverb 安装过程中提供的 hostname 可公开访问。此服务器块包含在一个新文件中,无法从 Forge UI 仪表板编辑。

如果站点的部署脚本不包含 reverb:restart 命令,Forge 将自动为您追加它。

SSL

如果您的站点存在 SSL 证书,该证书保护 Reverb 配置的主机名,Forge 将在启用 Reverb 时自动安装它,确保您的 Reverb 服务器可以通过安全的 WebSockets (wss) 访问。

如果在有效证书可用之前安装了 Reverb,您可以从站点的“SSL”选项卡请求 Reverb 配置的主机名的新的证书。Forge 将在证书激活后立即自动为 Reverb 配置安全的 WebSockets。Forge 还将在请求证书时使用 Reverb 的主机名预先填充“域名”SSL 表单输入。

在为支持 Reverb 的网站启用 SSL 后,您应该确保在重新部署网站之前正确定义以下环境变量。

REVERB_PORT=443
REVERB_SCHEME=https

VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"

MIX_REVERB_PORT="${REVERB_PORT}"
MIX_REVERB_SCHEME="${REVERB_SCHEME}"

转换现有守护进程

如果您的服务器已经配置了运行 Laravel Reverb 的守护进程,Forge 将为您管理该守护进程。此过程将网站 ID 和守护进程 ID 链接在一起,允许 Forge 代表您管理守护进程。

禁用 Reverb

禁用 Reverb 时,Forge 将删除守护进程并确保公共主机名不再可访问。但是,Forge 在启用 Reverb 时更新的任何设置(例如打开文件和连接限制)都不会重置,并且安装的任何 PHP 扩展都不会被删除。

Inertia 服务器端渲染

您可以通过“Inertia SSR”切换快速启用或禁用 Inertia SSR 守护进程。Forge 将为您创建所需的 Inertia SSR 守护进程。

启用 Inertia 守护进程时,Forge 会要求您提供更多详细信息。您还可以选择 Forge 是否应该更新您的部署脚本以追加 Inertia SSR 停止命令。

Enabling Inertia SSR

转换现有守护进程

如果您的服务器已经配置了运行 Inertia SSR 的守护进程,Forge 将提供为您转换守护进程的选项。此过程将网站 ID 和守护进程 ID 链接在一起,允许 Forge 代表您管理守护进程。

圈子权限

您可以通过授予server:create-schedulersserver:create-daemons权限,授予圈子成员在网站目录中运行任意命令的权限。