crazygoat / slim-reactor
基于Slim框架的React HTTP服务器
v0.2.5
2018-02-25 18:49 UTC
Requires
- php: ~7.1
- react/http: ^0.8.1
- slim/slim: ^3.1
README
React Http服务器,使用Slim 3作为请求处理器。Slim-reactor允许您比传统的php-fpm更快速地运行Slim 3应用程序。这一目标是通过跳过昂贵的PHP和框架引导过程实现的。这只是一个库,可以用于类似于slim-reactor-skeleton的骨架。您还需要像这样的进程管理器goatherd。
安装
安装slim-reactor最简单的方法是使用composer下载
composer require crazygoat/slim-reactor
使用示例
以下是运行Slim在React HTTP服务器中所需的最小代码
$app = new App(); // vanilla slim app see limitation
//or
$app = new SlimReactorApp(); //
//some app configuration here
$slimReactor = new SlimReactor($app);
$slimReactor->run();
更多示例可以在示例目录中找到。
纯Slim App的已知限制
纯Slim App(Slim\App
)不是为了作为React Http服务器的部分而设计的,因此它有一些使用限制。
- 您不能在路由中使用可选参数。Slim
Route
会记住请求之间的可选属性。一旦可选属性出现在请求中,下一个没有此属性的请求仍将位于该路由中。在SlimReactor中已修复。
这些问题的大多数都在SlimReactorApp
中得到了解决,并推荐与SlimReactor
一起使用此类。
配置
您可以通过将第二个参数传递给SlimReactor
构造函数来更改默认参数。
$slimReactor = new SlimReactor(
$app,
[
// options here
]
);
可用选项
socket
- 套接字地址,要监听本地主机接口上的端口80,请将此值设置为127.0.0.1:80
。默认值是:0.0.0.0:0
loopInterface
- 传递您循环接口的选项。如果未设置此选项,SlimRector将创建自己的循环接口实例。默认值null
。convertToSlim
- 将PSR-7请求/响应转换为Slim请求/响应类的布尔选项。如果您使用内部Slim函数(如Response->withJson()
),则需要将其设置为true
。默认设置为true
。如果我们确信您的代码没有使用Slim内部函数,则将此选项设置为false
可以加快应用程序的速度。staticContentPath
- 静态内容目录的路径(可以是相对路径)。如果设置,则SlimReactor将尝试在staticContentPath
目录中提供静态文件。如果文件不存在,SlimReactor将尝试找到匹配的路由。默认值null
。