-
listen_ip
:string
监听的IP,监听本机127.0.0.1
(IPv4)::1
(IPv6),监听所有地址0.0.0.0
(IPv4)::
(IPv6), 默认127.0.0.1
。 -
listen_port
:int
监听的端口,如果端口小于1024则需要root
权限,默认5200
。 -
socket_type
:默认SWOOLE_SOCK_TCP
。通常情况下,无需关心这个配置。若需Nginx代理至UnixSocket Stream
文件,则需修改为SWOOLE_SOCK_UNIX_STREAM
,此时listen_ip
则是UnixSocket Stream
文件的路径。 -
enable_coroutine_runtime
:bool
是否启用运行时协程,需Swoole>=4.1.0
,默认false
。 -
server
:string
当通过LaravelS响应数据时,设置HTTP头部Server
的值,若为空则不设置,默认LaravelS
。 -
handle_static
:bool
是否开启LaravelS处理静态资源(要求Swoole >= 1.7.21
,若Swoole >= 1.9.17
则由Swoole自己处理),默认false
,建议Nginx处理静态资源,LaravelS仅处理动态资源。静态资源的默认路径为base_path('public')
,可通过修改swoole.document_root
变更。 -
laravel_base_path
:string
Laravel/Lumen
的基础路径,默认base_path()
,可用于配置符号链接
。 -
inotify_reload.enable
:bool
是否开启Inotify Reload
,用于当修改代码后实时Reload所有worker进程,依赖库inotify,通过命令php --ri inotify
检查是否可用,默认false
,建议仅开发环境开启
,修改监听数上限。 -
inotify_reload.watch_path
:string
Inotify
监控的文件路径,默认有base_path()
。 -
inotify_reload.file_types
:array
Inotify
监控的文件类型,默认有.php
。 -
inotify_reload.excluded_dirs
:array
Inotify
监控时需要排除(或忽略)的目录,默认[]
,示例:[base_path('vendor')]
。 -
inotify_reload.log
:bool
是否输出Reload的日志,默认true
。 -
event_handlers
:array
配置Swoole
的事件回调函数,key-value格式,key为事件名,value为实现了事件处理接口的类,参考示例。 -
websocket.enable
:bool
是否启用WebSocket服务器。启用后WebSocket服务器监听的IP和端口与Http服务器相同,默认false
。 -
websocket.handler
:string
WebSocket逻辑处理的类名,需实现接口WebSocketHandlerInterface
,参考示例。 -
sockets
:array
配置TCP/UDP
套接字列表,参考示例。 -
processes
:array
配置自定义进程列表,参考示例。 -
timer
:array
配置毫秒定时器,参考示例。 -
events
:array
自定义的异步事件和监听的绑定列表,参考示例。 -
swoole_tables
:array
定义的swoole_table
列表,参考示例。 -
cleaners
: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, ],
-
register_providers
:array
每次请求
需要重新注册的Service Provider
列表,若存在boot()
方法,会自动执行。一般用于清理注册了单例的ServiceProvider
。//... 'register_providers' => [ \Xxx\Yyy\XxxServiceProvider::class, ], //...
-
destroy_controllers
:array
每次请求后自动销毁控制器,解决单例控制器的问题,参考示例。 -
swoole
:array
Swoole的原始
配置项,请参考Swoole配置项。