string监听的IP,监听本机127.0.0.1(IPv4)::1(IPv6),监听所有地址0.0.0.0(IPv4)::(IPv6), 默认127.0.0.1。
int监听的端口,如果端口小于1024则需要root权限,默认5200。
默认
SWOOLE_SOCK_TCP。通常情况下,无需关心这个配置。若需Nginx代理至UnixSocket Stream文件,则需修改为SWOOLE_SOCK_UNIX_STREAM,此时listen_ip则是UnixSocket Stream文件的路径。
string当通过LaravelS响应数据时,设置HTTP头部Server的值,若为空则不设置,默认LaravelS。
bool是否开启LaravelS处理静态资源(要求Swoole >= 1.7.21,若Swoole >= 1.9.17则由Swoole自己处理),默认false,建议Nginx处理静态资源,LaravelS仅处理动态资源。静态资源的默认路径为base_path('public'),可通过修改swoole.document_root变更。
stringLaravel/Lumen的基础路径,默认base_path(),可用于配置符号链接。
bool是否开启Inotify Reload,用于当修改代码后实时Reload所有worker进程,依赖库inotify,通过命令php --ri inotify检查是否可用,默认false,建议仅开发环境开启,修改监听数上限。
stringInotify监控的文件路径,默认有base_path()。
arrayInotify监控的文件类型,默认有.php。
arrayInotify监控时需要排除(或忽略)的目录,默认[],示例:[base_path('vendor')]。
bool是否输出Reload的日志,默认true。
array配置Swoole的事件回调函数,key-value格式,key为事件名,value为实现了事件处理接口的类,参考示例。
bool是否启用WebSocket服务器。启用后WebSocket服务器监听的IP和端口与Http服务器相同,默认false。
stringWebSocket逻辑处理的类名,需实现接口WebSocketHandlerInterface,参考示例。
array配置TCP/UDP套接字列表,参考示例。
array配置自定义进程列表,参考示例。
array配置毫秒定时器,参考示例。
array定义的swoole_table列表,参考示例。
array每次请求的清理器列表,用于清理一些残留的全局变量、单例对象、静态属性,避免多次请求间数据污染。这些清理器类必须实现接口Hhxsv5\LaravelS\Illuminate\Cleaners\CleanerInterface。清理的顺序与数组的顺序保持一致。这些清理器默认已启用,无需再配置。
// 如果你的项目中使用到了Session、Authentication、Passport,需配置如下清理器
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\SessionCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\AuthCleaner::class,
],// 如果你的项目中使用到了包"tymon/jwt-auth",需配置如下清理器
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\SessionCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\AuthCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\JWTCleaner::class,
],// 如果你的项目中使用到了包"spatie/laravel-menu",需配置如下清理器
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\MenuCleaner::class,
],// 如果你的项目中使用到了包"encore/laravel-admin",需配置如下清理器
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\SessionCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\AuthCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\LaravelAdminCleaner::class,
],// 如果你的项目中使用到了包"jqhph/dcat-admin"
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\SessionCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\AuthCleaner::class,
Hhxsv5\LaravelS\Illuminate\Cleaners\DcatAdminCleaner::class,
],// 如果你的项目中使用到了包"tightenco/ziggy",解决"Ziggy is not defined"
'cleaners' => [
Hhxsv5\LaravelS\Illuminate\Cleaners\ZiggyCleaner::class,
],
array每次请求需要重新注册的Service Provider列表,若存在boot()方法,会自动执行。一般用于清理注册了单例的ServiceProvider。
//...
'register_providers' => [
\Xxx\Yyy\XxxServiceProvider::class,
],
//...
array每次请求后自动销毁控制器,解决单例控制器的问题,参考示例。
arraySwoole的原始配置项,请参考Swoole服务器配置项。