手记

php各个模式、版本的区别

    本来想写一下关于windows2003及2008下配置php环境相关内容,一想到php的众多版本还不是特别清楚,各个版本下有细分各种模式、运行方式等,于是到php的官网www.php.net看了看,由于英文较差,加上百度只看出大概,先整理一下:

1.版本号    php全名是PHP:Hypertext preprocessor(递归缩写) 超文本预处理器,最初为personal home page。从最初发布personal home page tools第一个版本,称为php1.0,至今主流版本为5.X.X,最新版本为7.0.5(截止2016/04/11 09:55)。

    5.2.X与5.3.X有较大区别,从5.3.1之后php不再支持isapi模式运行。

    5.2.17是个经典版本。

    6.0版本没有发布,不知道为什么,然后5.6实现了很多6.0的功能。

    也没有5.7,直接到了7.0。


2.线程版本    php在windows下分为TS版和NTS版,TS即Thread safe(线程安全),NTS即None Thread safe(非线程安全);若iis以isapi模式运行必须使用TS版,若iis以FastCGI模式运行必须使用NTS版。linux中只有NTS版。


3.x86、x64的区别,x86运行在32及64位系统下都可以(运行在64位系统下注意开启兼容32位),x64必须运行在64位系统下。


4.windows下一般分为安装包及压缩包两种版本;linux下均为压缩包,一般分为bz2、gz、xz等。


5.运行模式    php下有五大运行模式分别为CGI、Fast-CGI、isapi、apache、CLI。

(1)CGI(通用网关接口/Common Gateway Interface)

早期的接口模式,和web服务器运行在不同进程下,因此处理用户请求时会占用大量系统资源,效率比较低。

(2)Fast-CGI可伸缩架构的CGI开放扩展,将CGI解释器放在内存中以获得较高性能,较CGI模式而言效率得到提升。

linux下以php-fpm服务运行。

(3)ISAPI(Internet Server Application Program Interface)微软提供的面向web服务器的api接口,dll程序和web服务器处于同一进程下,效率较CGI高。

(4)apache

模块模式,主要是windows下运行apache时使用的,随web服务器一起启动,也是在CGI基础上进行了扩展,加快了处理效率。

(5)CLI

命令行模式接口,CLI脚本适用于所有php


6.vc6、vc9、vc11、vc14

不同visual studio 版本编译的

早些php版本vc9不支持apache

新版本php没有了vc6,貌似是从5.4.5以后。


0人推荐
随时随地看视频
慕课网APP