网站首页
Veda 原型
互联网资讯
魔法图书馆
晚上八点
订阅
邮件
Veda 原型
成功,唯有积累,没有奇迹
编程语言
PHP服务器脚本
Python程序设计
Java编程语言
C/C++编程语言
前端设计
HTML/HTML 5
CSS层叠样式表
JavaScript
JQuery
Ajax技术
Flex/ActionScript
计算机基础
数据结构
计算机算法
编程思想
面向对象技术
计算机数学与基础
数据之美
数据库技术
Web设计理念
软件架构技术
开源与工具
开源项目与工具
信息安全
搜索引擎优化
网站运维
移动开发
iOS开发
Android开发
程序与生活
IT人家
智力开发
互联网时代
游戏 享受与创造
友情链接
博客导航
专题列表
计算机书籍推荐
关于本站
以图明志
-A wakening of the Trailblazer-
Gundam OO
Unlimited Blade Works
Fate Stay Night
Code Geass
Code Geass
Gundam OOQ Design
Gundam OO
Aeolia Schenberg
Gundam OO
PHP服务器脚本
[
专题
]
PHP内核探索:从SAPI接口开始
Zend SAPI Internals
PHP内核
SAPI
在 2011年06月01日 那天写的
138,099 views
SAPI提供了一个和外部通信的接口, 对于PHP5.2,默认提供了很多种SAPI, 常见的给apache的mod_php5,CGI,给IIS的ISAPI,还有Shell的CLI,本文就从CGI SAPI入手 ,介绍SAPI的机制。 虽然CGI简单,但是不用担心,它包含了绝大部分内容,足以让你深刻理解SAPI的工作原理。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:一次请求的开始与结束
MINIT与RINIT
PHP内核
开始与结束
在 2011年06月01日 那天写的
31,641 views
PHP开始执行以后会经过两个主要的阶段:处理请求之前的开始阶段和请求之后的结束阶段。 开始阶段有两个过程:第一个过程是模块初始化阶段(MINIT), 在整个SAPI生命周期内(例如Apache启动以后的整个生命周期内或者命令行程序整个执行过程中), 该过程只进行一次。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:一次请求生命周期
PHP的启动与关闭
PHP内核
生命周期
在 2011年06月02日 那天写的
33,306 views
我们从未手动开启过PHP的相关进程,它是随着Apache的启动而运行的。PHP通过mod_php5.so模块和Apache相连(具体说来是SAPI,即服务器应用程序编程接口)。PHP总共有三个模块:内核、Zend引擎、以及扩展层。Apache启动后,PHP解释程序也随之启动。PHP的启动过程有两步……
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:单进程SAPI生命周期
处理一次请求后就关闭
PHP内核
单进程
SAPI
在 2011年06月02日 那天写的
21,216 views
CLI/CGI模式的PHP属于单进程的SAPI模式。这类的请求在处理一次请求后就关闭。也就是只会经过如下几个环节: 开始 - 请求开始 - 请求关闭 - 结束 SAPI接口实现就完成了其生命周期。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:多进程/线程的SAPI生命周期
重复请求开始-请求关闭的环节
PHP内核
多进程
在 2011年06月02日 那天写的
20,525 views
通常PHP是编译为apache的一个模块来处理PHP请求。Apache一般会采用多进程模式, Apache启动后会fork出多个子进程,每个进程的内存空间独立,每个子进程都会经过开始和结束环节, 不过每个进程的开始阶段只在进程fork出来以来后进行,在整个进程的生命周期内可能会处理多个请求。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:Zend引擎
Zend引擎是PHP实现的核心
PHP内核
Zend引擎
在 2011年06月02日 那天写的
56,625 views
Zend引擎是PHP实现的核心,提供了语言实现上的基础设施。例如:PHP的语法实现,脚本的编译运行环境, 扩展机制以及内存管理等,当然这里的PHP指的是官方的PHP实现(除了官方的实现, 目前比较知名的有facebook的hiphop实现,不过到目前为止,PHP还没有一个标准的语言规范),而PHP则提供了请求处理和其他Web服务器的接口(SAPI)。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:再次探讨SAPI
很多操作都是通过SAPI接口实现
PHP内核
SAPI
在 2011年06月02日 那天写的
21,056 views
在PHP的生命周期的各个阶段,一些与服务相关的操作都是通过SAPI接口实现。 这些内置实现的物理位置在PHP源码的SAPI目录。这个目录存放了PHP对各个服务器抽象层的代码, 例如命令行程序的实现,Apache的mod_php模块实现以及fastcgi的实现等等。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:Apache模块介绍
PHP与Apache
PHP内核
Apache
在 2011年06月02日 那天写的
23,439 views
Apache是基于模块化设计的,总体上看起来代码的可读性高于php的代码,它的核心代码并不多,大多数的功能都被分散到各个模块中,各个模块在系统启动的时候按需载入。你如果想要阅读Apache的源代码,建议你直接从main.c文件读起,系统最主要的处理逻辑都包含在里面。
阅读全文 >>
PHP服务器脚本
HTTP服务器是如何实现对PHP的支持的?
主流方案有三种
HTTP
服务器
在 2011年06月02日 那天写的
7,360 views
目前各种服务器HTTP Server对PHP的支持一共有三种:通过HTTP Server内置的模块来实现,例如Apache的mod_php5,类似的Apache内置的mod_perl可以对perl支持;通过CGI来实现,这个就好比之前perl的CGI,该种方式的缺点是性能差,因为每次服务器遇到这些脚本都需要重新启动脚本解析器来执行脚本然后将结果返回给服务器。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:通过mod_php5支持PHP
Apache2的mod_php5模块说明
PHP内核
mod_php5
在 2011年06月03日 那天写的
27,828 views
Apache对PHP的支持是通过Apache的模块mod_php5来支持的。如果希望Apache支持PHP的话,在./configure步骤需要指定--with-apxs2=/usr/local/apache2/bin/apxs 表示告诉编译器通过Apache的mod_php5/apxs来提供对PHP5的解析。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:Apache运行与钩子函数
Apache的运行过程
PHP内核
运行
钩子函数
在 2011年06月03日 那天写的
18,719 views
Apache的运行分为启动阶段和运行阶段。 在启动阶段,Apache为了获得系统资源最大的使用权限,将以特权用户root(*nix系统)或超级管理员Administrator(Windows系统)完成启动, 并且整个过程处于一个单进程单线程的环境中。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:嵌入式PHP
嵌入式PHP类似CLI
PHP内核
嵌入式
在 2011年06月03日 那天写的
34,271 views
从PHP源码目录结构的介绍以及PHP生命周期可知:嵌入式PHP类似CLI,也是SAPI接口的另一种实现。 一般情况下,它的一个请求的生命周期也会和其它的SAPI一样:模块初始化=>请求初始化=>处理请求=>关闭请求=>关闭模块。 当然,这只是理想情况。因为特定的应用由自己特殊的需求,只是在处理PHP脚本这个环节基本一致。
阅读全文 >>
PHP服务器脚本
概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM
各公共网关接口介绍
PHP内核
CGI
在 2011年06月03日 那天写的
88,755 views
CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:PHP的FastCGI
FastCGI的整个工作流程
PHP内核
FastCGI
在 2011年06月03日 那天写的
36,168 views
PHP的CGI实现了Fastcgi协议,是一个TCP或UDP协议的服务器接受来自Web服务器的请求, 当启动时创建TCP/UDP协议的服务器的socket监听,并接收相关请求进行处理。随后就进入了PHP的生命周期: 模块初始化,sapi初始化,处理PHP请求,模块关闭,sapi关闭等就构成了整个CGI的生命周期。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:如何执行PHP脚本
Zend引擎是如何解释PHP脚本的
PHP内核
执行PHP脚本
在 2011年06月03日 那天写的
24,568 views
机器只能理解机器语言,那这些语言是怎么被执行的呢, 一般这些语言都需要一个解释器, 由解释器来执行这些源码, 实际上这些语言还是会经过编译环节,只不过它们一般会在运行的时候实时进行编译。为了效率,并不是所有语言在每次执行的时候都会重新编译一遍, 比如PHP的各种opcode缓存扩展。
阅读全文 >>
PHP服务器脚本
[
专题
]
PHP内核探索:PHP脚本的执行细节
PHP-C-汇编-机器码
PHP内核
PHP脚本执行
在 2011年06月03日 那天写的
18,231 views
众所周知,计算机的CPU只能执行二进制的机器码,每种CPU都有对应的汇编语言,汇编语言编译器将汇编语言翻译成二进制的机器语言,然后CPU开始执行这些机器码。汇编语言作为机器语言与程序设计者之间的一个层,给我们带来了很多方便,程序员不需要用晦涩的01数字来书写程序,当然人们并不满足这样的一个进步,于是在汇编语言之上又多了一个层——C语言。
阅读全文 >>
1 / 7
首页
< Prev
1
2
3
4
5
Next >
尾页
页码:
邮件订阅
输入您的邮箱地址,将会收到本站的文章更新信息,赶紧订阅吧。
RSS
Google
鲜果
抓虾
九点
有道
哪吒
QQ邮箱
时不我待
本周热门博文
品读《诫子书》
129 views
更多优秀文章,请移步
精华排行
互联网资讯
陈一舟:创业18年,我领悟的五点心得
384 views
ADS
大音声稀
任何一件事情,只要你认真去做,总是能够变得简单的。
晚八点
新时代严肃阅读指南:文本矩阵简述
662 views
我的微博
ADS
文章分类
专题推荐
其它
捐助本站
计算机书籍推荐
Sponsors
按月归档