Fresns 的 Swoole 配置
参考资料
Fresns 的 Swoole 配置
Fresns 本身不直接配置 Swoole,而是通过 Laravel 生态的 Laravel Octane 来接入 Swoole 作为高性能应用服务器。
以下是完整的配置步骤:
1. 安装 Octane 与 Swoole 驱动
进入 Fresns 项目根目录(即你终端所在的 /www/wwwroot/www.madama.cn/fresns),执行:
# 安装 Octane composer require laravel/octane # 安装 Swoole 驱动(按提示选择 swoole) php artisan octane:install --server=swoole
2. 启动 Octane 服务
php artisan octane:start --host=127.0.0.1 --port=8000
常用可选参数:
--workers=N:Worker 进程数,默认自动--max-requests=N:每个 Worker 处理多少请求后重启(默认 500,防止内存泄漏)--watch:文件修改自动重载(开发时用)
3. 配置 Nginx 反向代理
因为 Fresns 原本是 PHP-FPM 模式,启用 Octane 后请求需要转发给 Octane 的 8000 端口。在宝塔面板中修改站点的 URL 重写(伪静态),替换为以下配置:
location /index.php {
try_files /not_exists @octane;
}
location / {
try_files $uri $uri/ @octane;
}
location @octane {
set $suffix "";
if ($uri = /index.php) {
set $suffix ?$query_string;
}
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header Scheme $scheme;
proxy_set_header SERVER_PORT $server_port;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_pass http://127.0.0.1:8000$suffix;
}4. 用 Supervisor 守护进程
Octane 需要常驻运行,必须用 Supervisor 管理,否则终端关闭服务就停了。
在宝塔面板 → Supervisor 管理器 中添加进程:
php artisan octane:start --host=127.0.0.1 --port=8000
启动目录设为 /www/wwwroot/www.madama.cn/fresns。
5. 配置文件调整(按需)
编辑 config/octane.php:
超时时间:
max_execution_time默认 30 秒,设为0表示无限制文件监控(开发环境):在
watch数组中添加插件和主题目录,配合--watch使用
关键提醒
启用 Octane 后,Fresns 的运行模式从 PHP-FPM 切换为常驻内存模式。插件和主题的代码修改不会自动生效,需要重启 Octane(Supervisor 中重启进程)或使用 --watch 模式。
如果你是用宝塔面板部署的,Fresns 官方教程只覆盖了基础的 PHP-FPM 配置(PHP 8.3、扩展、伪静态、队列等),Octane 属于进阶加速方案,需要额外配置。
时间:2026-10-02 09:50:19
来源:https://fresns.ciilii.com/
