应用配置

应用配置分为 3 中配置类型

  • 基础配置
  • 服务器配置
  • 自定义配置

基础配置分别由:

  • 路由配置
  • 应用配置

组成,分别是存储基础业务配置和路由访问的地方.

路由配置

路由配置则是具体的路由配置信息,具体请前往: 路由与控制器

应用配置

应用配置则是整体核心配置的集合,包括时区,环境,日志,服务提供器,中间件等等,可以通过自定义 服务提供器 来读取具体的配置内容。

具体内容请查看: app.php

用户自定义配置可以设置 config.php,此处配置项会合并到 app.php 配置中,因为不能出现重名配置项。

完整的配置项

  1. <?php
  2. return [
  3. /**
  4. * The application name.
  5. */
  6. 'name' => 'dobee',
  7. /*
  8. * Application logger path
  9. */
  10. 'log' => [
  11. [\Monolog\Handler\StreamHandler::class, 'error.log', \Monolog\Logger::ERROR]
  12. ],
  13. /*
  14. * Exception handle
  15. */
  16. 'exception' => [
  17. 'response' => function (Exception $e) {
  18. return [
  19. 'msg' => $e->getMessage(),
  20. 'code' => $e->getCode(),
  21. 'file' => $e->getFile(),
  22. 'line' => $e->getLine(),
  23. 'trace' => explode("\n", $e->getTraceAsString()),
  24. ];
  25. },
  26. ],
  27. /**
  28. * Bootstrap service.
  29. */
  30. 'providers' => [
  31. \FastD\ServiceProvider\RouteServiceProvider::class,
  32. \FastD\ServiceProvider\LoggerServiceProvider::class,
  33. \FastD\ServiceProvider\DatabaseServiceProvider::class,
  34. \FastD\ServiceProvider\CacheServiceProvider::class,
  35. ],
  36. /**
  37. * Application consoles
  38. */
  39. 'consoles' => [],
  40. /**
  41. * Http middleware
  42. */
  43. 'middleware' => [
  44. 'basic.auth' => new FastD\BasicAuthenticate\HttpBasicAuthentication([
  45. 'authenticator' => [
  46. 'class' => \FastD\BasicAuthenticate\PhpAuthenticator::class,
  47. 'params' => [
  48. 'foo' => 'bar'
  49. ]
  50. ],
  51. 'response' => [
  52. 'class' => \FastD\Http\JsonResponse::class,
  53. 'data' => [
  54. 'msg' => 'not allow access',
  55. 'code' => 401
  56. ]
  57. ]
  58. ])
  59. ],
  60. ];

!! 默认的配置项请不要删除

服务器配置

服务器配置项 host 是必填的,是 Swoole 服务器监听的地址。options 配置项请查看 Swoole配置

完整的配置

  1. <?php
  2. return [
  3. 'host' => 'http://'.get_local_ip().':9527',
  4. 'class' => \FastD\Servitization\Server\HTTPServer::class,
  5. 'options' => [
  6. 'pid_file' => '',
  7. 'worker_num' => 10,
  8. 'task_worker_num' => 20,
  9. ],
  10. 'processes' => [
  11. ],
  12. 'listeners' => [
  13. [
  14. 'class' => \FastD\Servitization\Server\TCPServer::class,
  15. 'host' => 'tcp://'.get_local_ip().':9528',
  16. ],
  17. ],
  18. ];
自定义配置项

database.phpcache.php 是框架默认提供的扩展配置,由 DatabaseServiceProviderCacheServiceProvider 进行具体处理。

其中 database.php 与 cache.php 虽说是框架默认提供的,但是他们均属于自定义服务提供器之一。

如果需要自定添加或者修改服务提供器,具体请参考: 服务提供器

下一节: 中间件