• Windows下PHP版本选取


     1. 下载地址

     http://windows.php.net/download/
     

     2. PHP大版本

    •  PHP4:由于太古老、对OO支持不力已基本被淘汰。
    •  PHP5:分为三个分支——PHP5.2之前的版本、PHP5.2.X-5.3.X和PHP5.4之后的版本。
    ①PHP5.2之前的版本:因为某些功能缺陷或者BUG,PHP5.2之前的版本基本不用。
    ②PHP5.2.X-5.3.X:PHP5.2.X稳定性有很大的提升,而PHP5.3.X在稳定性上更胜一筹,增加了很多PHP5.2所不具有的功能,比如内置php-fpm、更完善的垃圾回收算法、命名空间的引入、sqlite3的支持等等。推荐5.3.3
    ③PHP5.4之后的版本:特性有一些变化,现在PHP官网下载中只有PHP5.4以上的版本下载。
    •  PHP6:基本没有生产线上的应用,还基本只是一款概念产品。

     

     3. x86/x64

    •  x86:32位操作系统
    •  x64:64位操作系统

     4. VC6/VC9/VC11

    VC6、VC9、VC11分别代表Visual C++ 6、Visual C++ 2008、Visual C++ 2012编译。
    需要注意的是VC9版本需要安装Visual C++ Redistributable for Visual Studio 2008 SP1,而VC11则需要安装Visual C++ Redistributable for Visual Studio 2012。

     

     5. Thread Safety(线程安全)、None-Thread Safe(非线程安全)

    • Thread Safety:一般在IIS以ISAPI方式加载的时候选择这个版本。
    • None-Thread Safe:一般以FastCGI方式运行的时候选择这个版本,具有更好的性能。
     
    CGI、ISAPI和FastCGI比较:
     
    1. CGI(通用网关接口/Common Gateway Interface)一般是可执行程序,例如EXE文件,和WEB服务器各自占据着不同的进程,而且一般一个CGI程序只能处理一个用户请求。这样,当用 户请求数量非常多时,会大量占用系统的资源,如内存、CPU时间等,造成效能低下。
    2. ISAPI(Internet Server Application Program Interface)是微软提供的一套面向WEB服务的API接口,它能实现CGI提供的全部功能,并在此基础上进行了扩展,如提供了过滤器应用程序接 口。ISAPI应用大多数以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,而是继续驻留在内存中等待处理别的用户输入。此外,ISAPI的DLL应用程序和WEB服务器处于同一个进程中,效率要显著高于CGI。
    3. FastCGI是可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。传统的CGI解释器的反复加载是 CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性等。
    PHP采用ISAPI和FastCGI的优缺点:
    • ISAPI:以 ISAPI 模式运行 PHP 的,这种方式最大的缺点就是稳定性不好,当 PHP 出错的时候,Apache进程也死掉。
     
    • FastCGI 模式运行 PHP 的优点:
    首先就是 PHP 出错的时候不会搞垮 Apache,只是 PHP 自己的进程当掉(但 FastCGI 会立即重新启动一个新 PHP 进程来代替当掉的进程)。
    其次 FastCGI 模式运行 PHP 比 ISAPI 模式性能更好
    最后,就是可以同时运行 PHP5 和 PHP4
     
    • FastCGI 模式的一些缺点:
    用 FastCGI 模式更适合生产环境的服务器,但对于开发用机器来说就不太合适。因为当使用 Zend Studio 调试程序时,由于 FastCGI 会认为 PHP 进程超时,从而在页面返回 500 错误。
     
     



     6. Apache

    •  Apache有两个下载地址:
     ①Apache Lounge:http://apachelounge.com/,使用PHP VC11 x86或者x64版本
     ②Apache.org:http://apache.org/,只能使用VC6版本,无法使用VC9+以上版本。

    Apache现在主流的两个版本是2.2和2.4,注意在于PHP进行整合时,如果使用的是2.2,则在选择php时,一定注意所下载的php目录中一定有“php5apache2_2.dll”文件,因为在配置apache的"Apache2.2confhttpd.conf"文件中的LoadModule时“LoadModule php5_module "c:/php/php5apache2_2.dll" ”一定是php5apache2_2.dll,否则会出现“the requested operation has failed!"的错误。对于apache2.4同理,只是“LoadModule php5_module "c:/php/php5apache2_4.dll"中用的是2_4。

  • 相关阅读:
    Hadoop Hive概念学习系列之hive里的视图(十二)
    使用COM提供SafeArray数据
    oracle undo 复杂度--oracle核心技术读书笔记四
    【Ruby】Ruby的model学习——Active Record Associations
    远程数据管理端开关
    跟着ZHONGHuan学习设计模式--桥接模式
    UVA 11768
    linux下查看日志基本命令
    java -D參数简化增加多个jar【简化设置classpath】
    23、Cocos2dx 3.0游戏开发找小三之粒子系统:你那里下雪了吗?
  • 原文地址:https://www.cnblogs.com/cbboys/p/4509867.html
Copyright © 2020-2023  润新知