laravel源码分析之主线

任何框架都有自己的主线,laravel亦如是。

源起
应用请求入口 public/index.php 文件,其主要作用如下

载入 Composer 生成的自动加载设置
bootstrap/app.php 脚本获取 Laravel 应用实例

中央处理器
根据请求类型,请求被发送到 HTTP/Console 内核(分别用于处理 Web 请求和 Artisan 命令)

app/Http/Kernel.php内核 (继承)bootstrappers 数组
bootstrappers 数组中的类在请求被执行前运行。bootstrappers 配置了错误处理、日志、检测应用环境以及其它在请求被处理前需要执行的任务
HTTP 内核还定义了一系列所有请求在处理前需要经过的 HTTP 中间件。

服务提供者
应用的所有服务提供者都被配置在 config/app.php 配置文件的 providers 数组中。

所有提供者的 register 方法被调用,然后,所有提供者被注册之后,boot 方法被调用。
服务提供者负责启动框架的所有各种各样的组件,比如数据库、队列、验证器,以及路由组件等

分发请求

应用被启动且所有的服务提供者被注册,Request 将会被交给路由器进行分发
路由器将会分发请求到路由或控制器,同时运行所有路由指定的中间件。

猜你喜欢

转载自blog.csdn.net/u011584949/article/details/80597030