设为首页 收藏本站
查看: 1366|回复: 0

深入分析windows下配置wamp环境各模块的版本兼容性

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-21 15:08:48 | 显示全部楼层 |阅读模式
DSC0000.png
  版本相关概念说明:


  • 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.iyunv.com/ganiks/

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

1.1 php常见版本
  http://windows.php.net/download/
DSC0001.png
  具体到小版本号:
  

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 guard和zend guard loader的区别


2. 按次序安装:


  • 安装Apache[2.2.4-win32-x86-no_ssl],注意指定路径到 D:\localhost  

  • 解压缩PHP[5.3.29-ts-win32-VC9-x86]  

  • 安装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"
  

  

  
... ...
  
... ...
  

  

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版本进行安装即可。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-102289-1-1.html 上篇帖子: 安装wamp时出现httpd.exe无法找到组件MSVCR100.dll的解决办法 下篇帖子: PHP之路---1---Wamp环境配置--php环境配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表