Magento 2 中请求( Request ) 后执行的基本过程
- 入口 :index.php
- 引导
Bootstrap::run() 定义于 ./vendor/magento/framework/App/Bootstrap.php 用于 index.php- 应用
App:launch() 定义于 ./vendor/magento/framework/App/Http.php 用于 ./vendor/magento/framework/App/Bootstrap.php- 路由
FrontController::dispatch()定义于 ./vendor/magento/framework/App/FrontController.php 用于 ./vendor/magento/framework/App/Http.phpRouter::match() 定义于 ./vendor/magento/framework/App/Router/DefaultRouter.php 用于 ./vendor/magento/framework/App/FrontController.php- 控制器处理
Controller::execute() 定义于 自定义控制器 用于 ./vendor/magento/framework/App/FrontController.php- 渲染
View::loadLayout() 定义于 ./vendor/magento/framework/App/View.php 用于 ./vendor/magento/framework/App/Action/Context.phpView::renderLayout() 同上- 刷新输出
Response::sendResponse() 定义于 ./vendor/magento/framework/App/Response/Http.php 用于 ./vendor/magento/framework/App/Http.php
Magento中有两个 index.php 文件:
/var/www/magento2/index.php- 开发/var/www/magento2/pub/index.php- 生产
有关更多:
FrontController 前端控制器使用DI收集路径并选择控制器。
https://nathanmcbride.io/magento2/Request-Flow-In-Magento-2
https://inchoo.net/magento-2/routing-in-magento-2/
http://www.dckap.com/blog/request-flow-in-magento-2/
Magento 2 中请求( Request ) 后执行的基本过程的更多相关文章
- 在浏览器中输入URL后执行的全部过程的个人总结
这个问题经常可以看到,今天我好好总结了下,是从网络模型的角度来分析问题的,主要涉及应用层:DNS,HTTP,传输层:TCP,网络层:IP和路由选择协议:RIP,OSPF(内部网关协议),BGP(外部网 ...
- 在浏览器中输入 www.baidu.com 后执行的全部过程
现在假设如果我们在客户端(客户端)浏览器中输入http://www.baidu.com,而baidu.com为要访问的服务器(服务器),下面详细分析客户端为了访问服务器而执行的一系列关于协议的操作: ...
- 在浏览器中输入www.taobao.com后执行的全部过程
>>>点击网址后,应用层的DNS协议会将网址解析为IP地址: DNS查找过程: 1. 浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程 ...
- 在浏览器中输入www.baidu.com后执行的全部过程
1.客户端浏览器通过DNS解析到www.baidu.com 的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径.客户端浏览器发起一个HTTP会话到220.181.27.48 ...
- Java基础-重写-子类重写父类中的方法后执行情况
代码 public class Test { public static void main(String[] args) { Shape shape = new Circle(); System.o ...
- ApiPost的预执行脚本和后执行脚本
ApiPost的预执行脚本和后执行脚本主要是用来定义变量.但是它们有什么区别呢? 预执行脚本 在当前接口发送请求前执行的脚本,可以理解为beforeSend的时候执行. 一般在这里,我们可以设置一些前 ...
- 在浏览器中输入URL后,执行的全部过程。会用到哪些协议?(一次完整的HTTP请求过程)
在浏览器中输入URL后,执行的全部过程.会用到哪些协议?(一次完整的HTTP请求过程) 整个流程如下: 域名解析 为了将消息从你的PC上传到服务器上,需要用到IP协议.ARP协议和OSPF协议. 发起 ...
- Spring拦截器中通过request获取到该请求对应Controller中的method对象
背景:项目使用Spring 3.1.0.RELEASE,从dao到Controller层全部是基于注解配置.我的需求是想在自定义的Spring拦截器中通过request获取到该请求对应于Control ...
- 解决filter拦截request中body内容后,字符流关闭,无法传到controller的问题
解决filter拦截request中body内容后,字符流关闭,无法传到controller的问题 2.问题: 在一般的请求中,content-type为:application/x-www-form ...
随机推荐
- RUST actix-web连接有密码的Redis数据库
RUST actix-web连接有密码的Redis数据库 actix-web的example里面,使用了自己的actix-redis,但是我尝试了一下,并不好用 替换成另一连接池,deadpool-r ...
- 形象解释各种卷积算法(Convolution animations)
No padding, no strides Arbitrary padding, no strides Half padding, no strides Full padding, no strid ...
- Go语言实现:【剑指offer】二叉树的下一个结点
该题目来源于牛客网<剑指offer>专题. 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回. 注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. Go语 ...
- Optional类包含的方法介绍及其示例
Optional类的介绍 javadoc中的介绍 这是一个可以为null的容器对象.如果值存在则isPresent()方法会返回true,调用get()方法会返回> 该对象. 使用场景 用于避免 ...
- 阿里云服务器ECS Ubuntu18.04 安装mysql
ubuntu系统好了,这下我应该安装MySQL数据库了.在安装过程中,遇到好多坑,下面是我的安装过程. 1.在阿里云控制台,用vnc登录到服务器. 用新的用户登录到Ubuntu用户系统. 打开终端: ...
- XAMPP与ISS在80端口冲突问题
1.在control界面上通过apach行的config,选择httpd.conf,将其中的listen和ServerName localhost:后面的80改为8080. 2.打开control最右 ...
- 杭电-------2044一只小蜜蜂(C语言写)
#include<stdio.h> ] = { }; long long divide(int n) { ) { ; } ) { return a[n]; } ) + divide(n - ...
- MyBatis 与Ibatis 区别
Ibatis 是 Mybatis 的前身,两者都是优秀的持久层框架. 区别: 1.mybatis 实现接口绑定,不需要具体接口实现类.但是需要在xml文件中 的 namespace 绑定具体的接口. ...
- wow.js wow.min.js animate.css animate.min.css
奉献给下载不到源码的小伙伴,下载到的请忽视 wow.js (function() { var MutationObserver, Util, WeakMap, getComputedStyle, ge ...
- Android开发当中ListView的使用
首先我们看ListView实现之后的的效果,如下图所示: 现在我们来看看如何来实现这个可以进行上下活动的ListView: 首先是主界面Activity_Main.xml的代码: <?xml v ...