服务器部署篇(四):使用现代化工具 Capistrano 自动部署应用代码到生产环境

PHP 代码早期使用 FTP 部署到生产环境,不过这种方式显然不适合集群部署,也不安全,本教程主要讨论如何使用现代化工具自动部署,这种方式简单、可预知结果,而且可逆。 版本控制 把代码纳入版本控制是现代开发人员的基本素养,我们可以使用 Git,也可以使用 SVN,对于应用开发者来说,版本控制有助于记录代码的变化,我们可以把一个时间点的代码标记为发布版本,可以回滚到之前的状态,还可以在单独…

[ PHP 内核与扩展开发系列] PHP 生命周期 —— 启动、终止与模式

启动与终止 PHP程序的启动可以看作有两个概念上的启动,终止也有两个概念上的终止。 其中一个是 PHP 作为Apache(拿它举例,板砖勿扔)的一个模块的启动与终止, 这次启动 PHP 会初始化一些必要数据,比如与宿主 Apache 有关的,并且这些数据是常驻内存的,终止与之相对。还有一个概念上的启动就是当 Apache 分配一个页面请求过来的时候,PHP会有一次启动与终止,这也是我们最…

[ PHP 内核与扩展开发系列] PHP 生命周期 —— 从 SAPI 开始

声明:本系列文章整理自GitHub项目PHP扩展开发及内核应用,并根据PHP最新代码对其进行适当调整和校对。适用于有 C 语言基础的高级 PHPer。 在基于 Apache 的 Web 环境中,我们并不需要单独启动 PHP 服务,它会作为一个模块自动加载到 Web 服务器里面去,只要我们启动了 Apache,被一起加载的 PHP 模块便会和服务器一起解析被请求的 PHP 脚本。 不过,当…

[ Laravel 5.4 文档 ] 起步 —— 一次请求的生命周期

1、简介 当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。 这篇文档的目标就是从更高层面向你阐述 Laravel 框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信的构建应用。如果你不能马上理解所有这些条款,不要失去信心!先试着掌握一些基本的东西,你的知识水…

[ Laravel 5.2 文档 ] 架构 —— 一次请求的生命周期

1、简介 当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。 本文档的目标就是从一个更好、更高层面向你阐述 Laravel 框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信的构建应用。 如果你不能马上理解所有这些条款,不要失去信心!先试着掌握一些基本的东西,…

Laravel 5.x 启动过程分析

1、初始化Application 1.1 注册基本绑定 app -> Application实例(Illuminate\Foundation\Application) Illuminate\Container\Container -> Application实例(Illuminate\Foundation\Application) 1.2 注册基本服务提供者并启动 Event…

[ Laravel 5.1 文档 ] 架构 —— 一次请求的生命周期

1、简介 当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。 本文档的目标就是从一个更好、更高层面向你阐述Laravel框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信的构建应用。 如果你不能马上理解所有这些条款,不要失去信心!先试着掌握一些基本的东西,你的…