版本相关概念说明:

  • ts/nts: thread safety 线程安全

    TS refers to multithread capable builds.
    NTS refers to single thread only builds.
    Use case for TS binaries involves interaction with a multithreaded SAPI and PHP loaded as a module into a web server.
    For NTS binaries the widespread use case is interaction with a web server through the FastCGI protocol, utilizing no multithreading (but also for example CLI).

  • VC6/VC9/VC11:
    • Compiler MSVC6 (Visual C++ 6.0)
    • Compiler MSVC9 (Visual C++ 2008)
    • Compiler MSVC11 (Visual C++ 2012)
  • x86/x64: 机器64位和32位

原创文章,转载请注明: http://www.cnblogs.com/ganiks/

1. 区分好版本,兼容性就明了了

1.1 php常见版本

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

具体到小版本号:

PHP 5.3 (5.3.29) VC9 ts/nts x86/x64
PHP 5.4 (5.4.32) VC9 ts/nts x86/x64
PHP 5.5 (5.5.16) VC11 ts/nts x86/x64
PHP 5.6 (5.6.0)  VC11 ts/nts x86/x64

1.2 Apache常见版本

http://httpd.apache.org/

  • Version 2.4.10
  • Version 2.2.29
  • Version 2.0

1.3 mod_fcgid常见版本

http://httpd.apache.org/mod_fcgid/

  • Version 2.3.6
  • Version 2.3.9

你的mod_perl处理你的CGI脚本是不是太累?

你是否想要在你服务器进程之外运行你的PHP程序?

那就快试试FastCGI吧。

mod_fcgid是Apache Http服务器的一个 FastCGI实现,将请求都指向它管理的FastCGI应用进程。
它是一个高性能的替代mod_cgi或者mod_cgid的不错的选择, 它启动了足够多的 CGI程序实例来处理当前的请求,并且这些实例还可以保持运行来面对即将到来的请求。

PHP开发者都喜欢它,比如,用它作为mod_php in-process 的优先选择。

貌似apache版本中一般都集成了mod_fcgid

1.4 memcache常见版本

http://windows.php.net/downloads/pecl/releases/memcache/3.0.8/

php_memcache-3.0.8-5.3-nts-vc9-x86.zip
php_memcache-3.0.8-5.3-ts-vc9-x86.zip
php_memcache-3.0.8-5.4-nts-vc9-x86.zip
php_memcache-3.0.8-5.4-ts-vc9-x86.zip
php_memcache-3.0.8-5.5-nts-vc11-x64.zip
php_memcache-3.0.8-5.5-nts-vc11-x86.zip
php_memcache-3.0.8-5.5-ts-vc11-x64.zip
php_memcache-3.0.8-5.5-ts-vc11-x86.zip
php_memcache-3.0.8-5.6-nts-vc11-x64.zip
php_memcache-3.0.8-5.6-nts-vc11-x86.zip
php_memcache-3.0.8-5.6-ts-vc11-x64.zip
php_memcache-3.0.8-5.6-ts-vc11-x86.zip

1.5 zend guard/optimizer常见版本

http://www.zend.com/en/products/guard/downloads#Windows

Zend Guard Loader (Runtime for PHP 5.4) 6.0.0
Zend Guard Loader (Runtime for PHP 5.3) 5.5.0
Zend Optimizer (Runtime for PHP 5.2 and earlier)

很明显,针对不同的PHP版本要用到不同的zend guard loader版本或者用zend optimizer

注意区分 zend guardzend guard loader的区别

2. 按次序安装:

  1. 安装Apache[2.2.4-win32-x86-no_ssl],注意指定路径到 D:\localhost
  2. 解压缩PHP[5.3.29-ts-win32-VC9-x86]
  3. 安装Mysql[5.5.39-win32],注意指定路径到 D:\localhost 并且要运行初始化向导配置用户名密码以及编码

d

3. 配置Apache+PHP:

3.1 配置Apache下的conf\httpd.conf

#LoadModule cgi_module modules/mod_cgi.so
LoadModule fcgid_module modules/mod_fcgid.so

#LoadModule php5_module
PHPIniDir "D:\localhost\php5.3ts"
LoadModule php5_module D:\localhost\php5.3ts\php5apache2_2.dll
AddType application/x-httpd-php .php .phtml
#Remove above lines after you unintall php

DocumentRoot "D:/localhost/www"

<Directory "D:/localhost/www">
... ...
... ...
</Directory>

3.2 配置php.ini

如果apache配置中指定了PHPIniDir,则直接可以配置php目录下的php.ini
否则, php5.3ts中的php.ini拷贝一份到 C:\windows 下面,并配置:

extension_dir = "D:\localhost\php5.3ts\ext"

extension=php_bz2.dll
extension=php_curl.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll

3.3 如果配置过程中报错,记得去看看 apache 目录下的 logs\errors

3.4 配置zend guard loader

解压缩 zend guard ZendLoader.dll到目录 yourphpdir\ext
修改PHP配置:

[Zend.loader]
zend_loader.enable=1
zend_loader.disable_licensing=1
zend_loader.obfuscation_level_support=3
zend_loader.license_path=
zend_extension="你的PHP安装目录\ext\ZendLoader.dll"

zend guard loader只支持NTS的版本,意味着如果你的php版本是TS的话,就没法使用zend guard loader了,如果你想查看自己的php是ts还是nts的,只需要输出phpinfo,然后搜索下:Thread Safety,disabled对应nts版本,否则为ts。
因此,终极解决办法就是,下载个php NTS版本进行安装即可。

深入分析windows下配置wamp环境各模块的版本兼容性的更多相关文章

  1. windows下配置lamp环境(0)---软件获取

    工作快一年了,还没有怎么配置过服务器环境,经常使用集成套件wampserver,为了复习配置wamp服务器 特意在虚拟机中测试安装步骤如下. 安装前步骤:下载软件.软件下载地址如下: 1.apache ...

  2. windows下配置lamp环境(5)---配置MySQL5.6

    开始配置mysql 1.创建配置文件my.ini   1.进入C:\wamp\MySQL   2.把my-default.ini 另存一份:my.ini   3.开始编辑mysql的配置文件,打开my ...

  3. windows下配置lamp环境(3)---配置PHP5.4

    下面配置php Php文件夹里有两个php.ini-*文件,随便修改一个,去掉后缀,变成php.ini (如图) 打开php.ini ,添加php扩展目录723行左右(其实放哪都无所谓,只不过php. ...

  4. windows下配置lamp环境(2)---配置Apache服务器2.2.25

    配置Apache 配置Apache时,先要找到安装目录中的主配置文httpd.conf,使用文本编辑器打开,最好不要使用windows自带的编辑器,可以使用NotePad++, vim,或者subli ...

  5. windows下配置lamp环境(1)---安装Apache服务器2.2.25

    window下lamp成为wamp; 安装wamp环境的第一步是安装Apache服务器.下面开始安装步骤图文并茂. 一.双击安装包点“next”进行下一步,然后同意协议(这张图没有截):

  6. QT + OpenCV + MinGW 在windows下配置开发环境

           由于研究项目需要,最近开始接触C++界面设计,关于“QT + OpenCV + MinGW在windows下配置开发环境”着实让人头疼,单次配置时间相当长,也十分不容易,本人第一次配置成 ...

  7. windows下配置caffe(环境:win7+vs2013+opencv3.0)

    说明:大部分转载于initialneil的大作Caffe + vs2013 + OpenCV in Windows Tutorial (I) – Setup 准备工作: 1.下载CUDA7.5: ht ...

  8. windows下配置Java环境变量

    一.首先, JDK的安装路径,在这里我们选择默认安装在C:\Program Files\Java\jdk1.7.0_45\目录下. 二.下面, 设置环境变量: [1]“我的电脑”右键菜单---> ...

  9. Windows下配置Django环境

    辛辛苦苦,终于在Windows10上把Django环境搭建并成功建立工程 1.首先安装python,配置环境变量path:C:\Python27:C:\Python27\Scripts: 2.去dja ...

随机推荐

  1. 笔记:Memory Notification: Library Cache Object loaded into SGA

    笔记:Memory Notification: Library Cache Object loaded into SGA在警告日志中发现一些这样的警告信息:Mon Nov 21 14:24:22 20 ...

  2. ubuntu使用经验整理

     ===================================================== 清理/boot分区 =================================== ...

  3. Spring Security笔记:自定义登录页

    以下内容参考了 http://www.mkyong.com/spring-security/spring-security-form-login-example/ 接上回,在前面的Hello Worl ...

  4. 【转】CSS Sprites教程大全(使用方法、工具介绍)

    什么是CSS Sprite CSS Sprite 又叫CSS精灵,是目前大型网站中经常运用的图片处理方式.它的原理很简单,将网站上零散的小图片(或图标)整合在一张大图上,再用CSS中“backgrou ...

  5. c# 模拟 网页实现12306登陆、自动刷票、自动抢票完全篇

    这一篇文章,我将从头到尾教大家使用c#模拟网页面登陆12306网站,自动刷票,选择订票人,到最后一步提交订单.研究过HTTP协议的童鞋们都知道,我们在访问网站时,是有两种方式的,POST和GET方式, ...

  6. C语言输出规定长度的整数,不够位数前面补零

    今天在做ACM题目的时候,遇到了这么一个问题,还真别说,这个以前真的没用过,当时就傻掉了,还好这个世界有Google,通过搜索了解了输出这种格式的C语言实现方法.但是没有找到C++的实现方法,希望知道 ...

  7. (转载)MatLab绘图

    转载自:http://www.cnblogs.com/hxsyl/archive/2012/10/10/2718380.html 转载自:http://www.cnblogs.com/jeromebl ...

  8. Laravel 5.2 教程 - 文件上传

    一.简介 Laravel 有很棒的文件系统抽象层,是基于 Frank de Jonge 的 Flysystem 扩展包. Laravel 集成的 Flysystem 提供了简单的接口,可以操作本地端空 ...

  9. VS2013发布网站详细步骤

    以下是我发布网站的时候,搜索到的可以使用的办法,同样适用于vs2013(已经尝试). 1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布: V ...

  10. Oracle11g温习-第一章 3、ORACLE逻辑结构

    2013年4月27日 星期六 10:27 Oracle逻辑结构的相关数据字典: 记录各个表空间的详细信息. SYS @ prod > select tablespace_name,status ...