前言:这两天闲着没事,就想学一下ThinkPHP。学习ThinkPHP要先安装好Apache、MySQL 、PHP等运行环境。

为了方便起见,打算就用集成环境。ThinkPHP官方网站推荐的是“WAMP”,用起来确实也很方便,但是修改Apache配置文件http.conf时,总是以“记事本”打开,改起来极为不便。于是就寻思着换其他的集成环境,尝试过“XAMPP”之后看到了“APMServ”。因为“XAMPP”是英文的,所以毅然的选择了“APMServ”。

安装好APMServ之后,用起来确实挺爽,修改配置什么的都比较方便。就是集成的东西有点多,但不启用也不会影响什么,总体还是比较满意的。

可是运行ThinkPHP的时候又出现了新的问题:PHP要求版本至少是5.3的。目前APMServ的PHP版本只是5.2.6,满足不了需求,怎么办?难道只能用“WAMP”或者“XAMPP”?怎么才能使ThinkPHP在APMServer环境下正常运行呢?升级PHP版本?没错,就是升级版本,既然官方没有升级,那就自己升级呗。

百度“APMServ5.2.6 php升级”,很多文章都是千篇一律,说的也不够详细。谷歌最近也不能用,只能“死马当活马医”了,选了其中的一篇尝试升级。折腾了一会终成功了。下面对这次升级进行总结:

第一步:下载PHP新版本

首先要明确:选择什么版本的PHP?
如果你是在windows下使用Apache+PHP的,请选择VC6版本;
如果你是在windows下使用IIS+PHP的,请选择VC9或者VC11版本。

因为APMServ使用的是Apache+PHP,所以只能下载VC6版本的PHP。
PHP官网查看了一下,下载最新的VC6版本:php-5.3.0-Win32-VC6-x86.zip

第二步:更新PHP文件

将下载好的PHP文件解压缩,解压缩的文件夹“php-5.3.0-Win32-VC6-x86”复制到APMServ5.2.6的根目录,我这里是放在“D:\APMServ5.2.6”。

然后将原来“PHP”目录下的”ext “和”extras“文件夹复制到“php-5.3.0-Win32-VC6-x86”目录下,遇到重复文件,不要覆盖。

还有原来”PHP“目录下的“libmcrypt.dll”、“libmhash.dll”和“libmysql.dll”三个文件复制到“php-5.3.0-Win32-VC6-x86”目录下,遇到重复文件,覆盖。

最后将原来的PHP文件备份,我这里是重命名为“PHP_backup”;还要将“php-5.3.0-Win32-VC6-x86” 重命名为:“PHP”。

第三步:修改配置文件

将“PHP”目录下的“php.ini-production”文件重命名为:“php.ini”。

打开文件,找到:

short_open_tag = Off

修改为:

short_open_tag = On

找到:

; extension_dir = "./"
; On windows:
; extension_dir = "ext"

修改为:

extension_dir = "D:/APMServ5.2.6/PHP/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 11g 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_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll

将前面的“;”根据需要去掉,我这里是去除了所有的“;”,表示开启所有拓展。不熟悉php的话,建议去除所有的“;”。

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
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_oci8.dll
extension=php_oci8_11g.dll
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
extension=php_snmp.dll
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite.dll
extension=php_sqlite3.dll
extension=php_sybase_ct.dll
extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll
extension=php_zip.dll

最后在文档末尾添加下面的代码:

[eaccelerator]
zend_extension_ts="D:/APMServ5.2.6/zend/eAccelerator/eaccelerator.dll"
eaccelerator.shm_size="32"
eaccelerator.cache_dir="D:/APMServ5.2.6/tmp/eaccelerator/"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
eaccelerator.keys = "shm"
eaccelerator.sessions = "shm" [Zend]
zend_optimizer.optimization_level=1023
zend_optimizer.encoder_loader=1
zend_extension_ts="D:/APMServ5.2.6/zend/ZendOptimizer-3.3.3/php-5.2.x/ZendOptimizer.dll"

到这里,APMServ5.2.6就已经升级PHP成功了。

APMServ5.2.6升级PHP的更多相关文章

  1. APMServ5.2.6 升级php5.2 到 5.3版本及Memcache升级!

    一.如何选择PHP5.3的VC9版本和VC6版本 VC6是什么?VC6就是legacy Visual Studio 6  compiler,就是使用这个编译器编译的.VC9是什么?VC9就是the V ...

  2. APMServ5.2.6 升级PHP版本 到高版本 5.3,5.4

    首先下载:http://windows.php.net/downloads/releases/php-5.3.28-Win32-VC9-x86.zip  Thursday, December 12, ...

  3. APMServ升级php 与 Wamp升级PHP版本到5.3

    方法一:(我亲测试,没问题)首先下载:php-5.3.1-Win32-VC6-x86.ziphttp://windows.php.net/downloads/releases/archives/ 解压 ...

  4. APMServ升级PHP至5.3

    APMServ5.2.6 的php版本是php5.2.6,所以需要升级一下PHP版本:1.到 php下载地址下载PHP5.3的VC6版本的zip文件,我下载的是:php-5.3.23-Win32-VC ...

  5. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  6. 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!

    看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ...

  7. Entity Framework Core 1.1 升级通告

    原文地址:https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/ 翻译:杨晓东 ...

  8. ASP.NET 5 RC1 升级 ASP.NET Core 1.0 RC2 记录

    升级文档: Migrating from DNX to .NET Core Migrating from ASP.NET 5 RC1 to ASP.NET Core 1.0 RC2 Migrating ...

  9. SQL Server2016升级前几点自检

    SQL Server2016已经出来一段时间了,而且最新的SP1包也于2016年11月18日正式发布,各种新的特性推出让我们跃跃欲试.那么对于我们真实的业务环境,特别是生产环境要不要"跟风& ...

随机推荐

  1. NET设计模式(2):单件模式(Singleton Pattern)[转载]

    单件模式(Singleton Pattern) ——.NET设计模式系列之二 Terrylee,2005年12月07日 概述 Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问 ...

  2. Spring JDBC 随笔

    Spring 框架,借助 JdbcTemplate 类来简化 java 访问 database. 完成一个增查改删(CRUD)的基本功能,借助下面 5 个角色来共同来完成. 1. object cla ...

  3. libvirt 命令行交互工具之virsh

    libvirt是当前主流VM最低层库.IBM PowerVM也不例外,libvirt是深入玩虚拟化必须玩转的东西; 简单测试玩玩libvirt 的virsh命令行交互工具, 你我都知libvirt大体 ...

  4. Git详解之二 Git基础

    Git 基础 读完本章你就能上手使用 Git 了.本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置: ...

  5. 终于有人把O2O、C2C、B2B、B2C的区别讲透了

    一.O2O.C2C.B2B.B2C的区别在哪里? o2o 是 online to offline 分为四种运营模式 1.online to offline 是线上交易到线下消费体验 2.offline ...

  6. POJ3080:Blue Jeans

    Description The Genographic Project is a research partnership between IBM and The National Geographi ...

  7. mysql5.5.17源代码安装

    1. 源代码包下载  源代码包通常也採用tar.gz压缩.名称中仅仅包括版本号信息,大小也比RPM包.二进制包小非常多,解压后的文件里含有INSTALL-SOURCE文件.可从MySQL官网(http ...

  8. bullet HashMap 内存紧密的哈希表

    last modified time:2014-11-9 14:07:00 bullet 是一款开源物理引擎,它提供了碰撞检測.重力模拟等功能,非常多3D游戏.3D设计软件(如3D Mark)使用它作 ...

  9. [Angular 2] Using a Reducer to Change an Object's Property Inside an Array

    Reducers are also often used for changing a single property inside of other reducers. This lesson sh ...

  10. Android 带你玩转实现游戏2048 其实2048只是个普通的控件(转)

    1.概述 博主本想踏入游戏开放行业,无奈水太深,不会游泳:于是乎,只能继续开发应用,但是原生Android也能开发游戏么,2048.像素鸟.别踩什么来着:今天给大家带来一篇2048的开发篇,别怕不分上 ...