> Magento2中文手册 > Magento 2 初始化和引导

Magento 2 初始化和引导

bootstrapping 概述

运行magento 2, 以下代码在index.PHP中执行:

  • 引入 <magento 2 安装目录>/app/bootstrap.php 执行必要的初始化例程,如错误处理,初始化自动加载,设置配置选项,设置默认时区,等等。
  • 创建一个实例 \Magento\Framework\App\Bootstrap.
  • 创建一个Magento 2 的应用实例 (\Magento\Framework\AppInterface).
  • 运行Magento 2

Bootstrap 运行逻辑

bootstrap 安装下面的流程运行 magento2:

  1. 初始化错误处理程序。
  2. 创建对象管理器(/Magento/Framework/ObjectManager)和基本共享服务,这些服务在任何地方都使用,并且受环境的影响。环境参数被正确地注入到这些对象。
  3. 判断mode是否启用
  4. 判断Magento2是否安装
  5. 启动Magento2.

    任何未捕获的异常在应用程序启动后自动传回Magento 2 的 catchException() 方法,catchException方法用来处理异常. 最后返回 true 或者 false:

    • 如果反回 true: Magento处理异常成功。不需要做其他事情.
    • 如果反回 false (或任何其他结果):bootstrap 执行默认异常处理子程序.
  6. 发送应用程序对象提供的响应。

修改 bootstrap 代码示例:

use Magento\Framework\App\Bootstrap;
require __DIR__ . '/app/bootstrap.php';
$params = $_SERVER;
$params[Bootstrap::PARAM_REQUIRE_MAINTENANCE] = true; // default false
$params[Bootstrap::PARAM_REQUIRE_IS_INSTALLED] = false; // default true
$bootstrap = Bootstrap::create(BP, $params);
/** @var \Magento\Framework\App\Http $app */
$app = $bootstrap->createApplication('Magento\Framework\App\Http');
$bootstrap->run($app);
  • 自定义基础目录路径(mage_dirs)
  • 设置 mode (MAGE_MODE)
  • Enable an HTML profiler (MAGE_PROFILER)
上一篇:
下一篇: