AMH升级PHP的方法及后续

更新时间:2017-12-03 10:17:56点击:16028 技术资料

因最近PHP漏洞影响范围比较大,所以准备给vps升级一下,在DO的centos6环境实测成功,此一键升级脚本来自于

http://vpser.club/管理员Bestony。
使用方法:
下载脚本
wget http://www.linuxnode.org/vpserclub/script/amhphpupgrader.sh
添加执行权限
chmod a+x amhphpupgrader.sh
执行脚本
bash amhphpupgrader.sh
然后进入选择界面
输入 1 回车,即可自动升级至5.4.41;
输入 2 回车,即可自动升级至5.5.24;
输入 3 回车,即可自动升级至5.6.8;
输入4或其他会退出
PHP使用的是官方中国源[CN2]
图片显示5.4.40,经过和管理员反馈已经更新至5.4.41了,所以只管输入1安装就可。安装好后进入AMH管理面板发现右下角还是显示

PHP5.3.27,实际上PHP已经更新至5.4.41了。挂探针或者登录vps使用
php -v
AMH4.2一键升级PHP 5.4.41脚本

查看版本即可看到PHP版本为5.4.41,其它版本未安装,就不做叙述了。
如果出现502错误要用winscp到/usr/local/php/etc/目录下的php-fpm-template.conf文件添加两行:
listen.group=www
listen.user=www
如果还是遇到错误,就到amh版面上的虚拟主机点编辑,然后打开日志,然后保存就好了。


最近需要给一台vps的amh4.2升级php版本,在网上找了一圈,给的升级脚本下载链接都失效了,最后还是找到了一个,做下备用。

wget http://zhujiwiki.com/usr/uploads/2015/12/amhphpupgrader.sh
chmod a+x amhphpupgrader.sh
./amhphpupgrader.sh
另外给个我自己留存的地址,万一上面的也失效了就不好了。

wget http://d.zmrbk.com/vps/amhphpupgrader.sh
chmod a+x amhphpupgrader.sh
./amhphpupgrader.sh
如果我们重启VPS之后,Nginx是没有生效的,我们需要单独再重启一次AMH或者重启NGINX才可以生效。

amh nginx restart


大家好,今天为大家带来AMH4.2升级php版本之后续。
首先感谢西秦为大家带来PHP升级脚本,地址见http://bbs.aliyun.com/read/256612.html?spm=5176.7189909.0.0.nyfpSt
但是西秦的脚本里面在PHP编译过程中有许多组件没有安装,Now,我给大家带来组件安装教程。
特别注意:AMH升级PHP版本后,从后台模板扩展里面进行安装的组件大多不能使用,所以,如果你升级了PHP版本,请不要尝试,老

实用下面手动编译方法安装。
下面我以在Centos6.5 64位,PHP5.4.45为例为大家带来安装过程:
1.首先我们来安装APC
APC项目地址:http://pecl.php.net/package/apc

复制代码
wget http://pecl.php.net/get/APC-3.1.13.tgz

复制代码
tar zxvf APC-3.1.13.tgz

复制代码
cd APC-3.1.13

复制代码
/usr/local/php/bin/phpize

复制代码
./configure --with-php-config=/usr/local/php/bin/php-config

复制代码
make && make install

如果编译过程不出错的话,应该是在/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525这个路径下会看到 apc.so

的文件。
特别注意:红字部分特别注意一下!这个路径下的那个日期有可能变化,请根据自己文件夹名的实际情况填写。
添加文件路径到php.ini
复制代码
vi /etc/php.ini

在合适的位置加入以下代码(php.ini文件里面仔细找一下有没有[APC]字样的字头,加在这个下面就行,如果没有,就找个位置添加


复制代码
[APC]
extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/
extension="apc.so"

按ESC退出 输入
复制代码
:wq  回车

保存文件。
重启php服务 【我帮坛友搞的这台机器可能是他之前有装过一键包,因为没有密码我也没有办法搞成纯净系统再安装,所以php服务

restart会失败,还得执行一次 amh php start】
复制代码
amh php restart

2.选择性安装Zend Opcache
复制代码
wget http://pecl.php.net/get/zendopcache-7.0.5.tgz
tar zxvf zendopcache-7.0.5.tgz
cd zendopcache-7.0.5
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

编译完成后我们修改php.ini文件
复制代码
vi /etc/php.ini

在文件最后添加如下代码
复制代码
[Zend Opcache]
zend_extension=/usr/local/php/lib/php/extensions/no-debug-zts-20100525/opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1

照上面方法保存,退出,重启php服务。
3.安装mcrypt扩展
3.1首先要安装mcrypt库,这个如果使用的是Centos的话,可以直接用下面命令进行安装
复制代码
yum install libmcrypt libmcrypt-devel mcrypt mhash

3.2安装php的mcrypt扩展
一般情况下,php的扩展会在php的源文件中,如果你是用前面提到的西秦的升级脚本,那么他的php版本是存

在/usr/local/vpsug.com/下的,我们以此为蓝本操作。
进入php源文件目录
复制代码
cd /usr/local/vpsug.com/php-5.4.45/ext/mcrypt

下面进行编译安装 和前面安装APC的差不太多
复制代码
/usr/local/php/bin/phpize
复制代码
./configure --with-php-config=/usr/local/php/bin/php-config

复制代码
make && make install

编译完成后我们修改php.ini文件
复制代码
vi /etc/php.ini

在文件里面找到[Mcrypt]这样的一个字头,在下面添加如下代码
复制代码
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/mcrypt.so

照上面方法保存,退出,重启php服务。
以上两个编译过程相当简单,基本没有什么难度。
4.安装mysqli扩展
进入php源文件目录
复制代码
cd /usr/local/vpsug.com/php-5.4.45/ext/mysqli

下面进行编译安装
复制代码
/usr/local/php/bin/phpize
复制代码
./configure --prefix=/usr/local/mysqli --with-php-config=/usr/local/php/bin/php-config --with-

mysqli=/usr/local/mysql/bin/mysql_config

复制代码
make && make install

编译完成后我们修改php.ini文件
复制代码
vi /etc/php.ini

在文件里面找到Mysqli]这样的一个字头,在下面添加如下代码
复制代码
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/mysqli.so

照上面方法保存,退出,重启php服务。
5.安装PDO-Mysql扩展  新版的phpwind必须的组件。
复制代码
wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
tar -zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql/bin/mysql_config

在make之前还要做一个mysql的header文件的软连接。因为mysql安装的时候指定了目录,不做软连接的话,还是找不到header文件


复制代码
ln -s /usr/local/mysql/include/* /usr/local/include/

然后执行
复制代码
make && make install

下面转去1楼吧,下面的代码我怎么搞也不成样子了,代码直接给我显示代码模式,看不成了,我去!phpwind的编辑器还真是烂啊





安装完后,网站打不开,进虚拟主机,点编辑再保存就可以了。

推荐阅读