centosphp升级54
A. 鍝浣嶅ぇ绁炲彲浠ュ府甯鎴戯纻centos6.5涓嬬紪璇戝畨瑁卲hp5.4.6镞讹纴镐讳细阆囧埌锲句笅闂棰桡纴鎴戞槸凿滈笩锛岄夯鐑︽寚镣癸纴璋㈣阿锛
yun install perl
yum install php
yum install mysql
B. centos7系统Apache+php+mysql环境,怎么升级PHP版本
yum install php php-devel
重启apache使php生效
systemctl restart httpd.service
此时可以在目录:/var/www/html/下建立一个PHP文件
代码:
<?php phpinfo(); ?>
然后访问这个文件,就能看到PHP的一些信息,php.ini配置文件的路径可以在这个页面上看到
安装php的扩展
yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
安装完扩展之后需要再次重启apache
systemctl restart httpd.service
C. 濡备綍鍦–entOS 6.5涓婂崌绾PHP鐗堟湰
鍦ㄦ洿鏂癙HP涔嫔墠锛屽厛镆ョ湅涓嫔綋鍓峆HP鐗堟湰锛岄伩鍏嶉吨澶岖殑镟存柊
# php -v
妫镆ュ綋鍓峆HP镄勫畨瑁呭寘
# yum list installed | grep php
绉婚櫎褰揿墠PHP镄勫畨瑁呭寘锛屽惁鍒椤规槗璧峰啿绐
# yum remove php*
鐢变簬榛樿ょ殑YUM婧愭棤娉曞崌绾PHP锛屾墍浠ラ渶瑕佹坊锷犵涓夋柟镄刌UM婧愶纴姝ゅ勭敤鍒皐ebtatic銆
锲犱负鏄疌entOS 6.5锛屾墍浠ョ敤浠ヤ笅URL
# rpm -Uvh yum/el6/latest.rpm
濡傛灉鏄疌entOS 7.x
rpm -Uvh yum/el7/epel-release.rpm
rpm -Uvh yum/el7/webtatic-release.rpm
镆ョ湅YUM婧愪笂鑳界敤PHP瀹夎呭寘
锛 yum list php*
瀹夎匬HP5.5鍙婇渶瑕佺殑镓╁𪾢
# yum install php55w php55w-devel php55w-common php55w-mysql php55w-pdo php55w-opacache php55w-xml
鍐嶆℃煡鐪婸HP鐗堟湰锛屼互纭璁ゅ畨瑁呮槸钖︽垚锷
瀵逛简锛屽傛灉浣犵殑PHP瑕佺敤鍒癛edis锛岃峰埆蹇树简瀹夎卲hp-redis 镓╁𪾢
锛 yum install php-redis
D. 如何在CentOS系统中把PHP 5.3.x更新到PHP 5.4.x
1.首页安装Webtatic EL6 YUM源
rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm
2.停止web服务器
service nginx stop
或者
service httpd stop
3.删除当前的 php 安装 php5.4
yum remove php*
yum install php54w
4.重启web服务器
service php-fpm restart
service nginx start
或者
service httpd restart
5.查看php版本
php -v
PHP 5.4.33 (cli) (built: Sep 19 2014 19:58:27)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
E. 如何在linux下安装多个不同版本的PHP
Linux下部署php多版本共存
背景说明
自php7问世,身为最新版本控的我马上升级体验,但是由于服务器上还有旧程序在运行,只好部署一个php多版本共存环境。
现有环境是lnmp
- CentOS 6.7
- nginx 1.10.1
- mariadb-10.0.26
- php 7.0.8
为了更好兼容旧的php程序,推荐使用5.4.45. 主要是兼容mysql扩展。
开始安装
首先要下载php-5.4.45.tar.gz源码包。
通过源码安装
# tar xzvf php-5.4.45.tar.gz
# cd php-5.4.45
# ./configure --prefix=/usr/local/php54 --with-config-file-path=/usr/local/php54/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-intl --with-xsl
# make ZEND_EXTRA_LIBS='-liconv'
# make install
# cp php.ini-proction /usr/local/php/etc/php.ini
------------------------------------------------------------------------------------------------
php.ini 配置
post_max_size = 50M
upload_max_filesize = 50M
date.timezone = PRC
short_open_tag = On
cgi.fix_pathinfo=0
max_execution_time = 300
disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server
------------------------------------------------------------------------------------------------
php-fpm.conf 配置
------------------------------
# vim /usr/local/php/etc/php-fpm.conf1
[global]
pid = /usr/local/php54/var/run/php-fpm.pid
error_log = /usr/local/php54/var/log/php-fpm.log
log_level = notice
[www]
listen = /tmp/php54-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1:9001
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 40
pm.start_servers = 20
pm.min_spare_servers = 20
pm.max_spare_servers = 40
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = var/log/slow.log
----------------------------------------------------------------------------------
启动 php-fpm
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php54-fpm
# chmod +x /etc/init.d/php54-fpm
# /etc/init.d/php54-fpm start
-------------------------------------------------------------------------------------------
修改nginx配置,对需要的服务配置使用php-5.4.45
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php54-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
----------------------------------------------------------------------------------------
配置php-5.4.45 的php54-fpm 开机自动启动
# chkconfig --add php54-fpm
# chkconfig php54-fpm on
F. linux centos 7 下用yum 安装iso镜像里自带的php5.4.16版本的但是没有php-fqm文件不知道怎么重启php服务
systemctl restart php-fpm.service #这条命令是重启php服务
下面是一个比较靠谱的php安装步骤:
先删除已有的php版本 ,执行下面的命令删除php
yum remove php-common
然后像安装那样问你是否继续的,输入yes即可
添加 yum 源
CentOS 6.x 的源
# rpm -Uvh http://download.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
安装 PHP
# yum install --enablerepo=remi,remi-php56 php php-opcache php-pecl-apcu php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof php-pdo php-pear php-fpm php-cli php-xml php-bcmath php-process php-gd php-common
注:安装5.6版本为remi-php56,安装5.5版本为remi-php55
G. 现在要升级php5.4已上的版本,怎么升级
一、前言
我们公司服务器上的PHP版本是5.2,真的太旧了,除了很多新特性无法使用之外,PHP5.4的性能也比5.2版本有所提高,有助于提供业务的吞吐量。今年,我们计划将公司所有业务的PHP版本升级为5.4.41。
二、升级前准备
在升级PHP版本之前,首先要做的是检查业务代码的语法兼容性。其实,在官网上已经有相关的升级指引,我参考的是这2个链接。
从 PHP 5.2.x 移植到 PHP 5.3.x:http://php.net/manual/zh/migration53.php
从 PHP 5.3.X 迁移到 PHP 5.4.X:http://php.net/manual/zh/migration54.php
官方的文档中,没有升级指引从PHP5.2直接升级到PHP5.4,因此,需要对以上的升级指引,做一个归纳总结。上面的链接中有好几篇子文章,我主要关注的是“不向下兼容的变化”,“PHP 5.3.x 中弃用的功能”,“被移除的扩展”,“其他改变”……,主要目的是找出不兼容的语法(导致错误),以及将会被移除的函数。
我们使用以下一个表格来进行总结,方便各业务的人员能够对照PHP版本升级带来的变化而修改各自的业务代码
以上内容摘抄自官网的一些说明,这里就不详细列出来了。
三、测试
完善的单元测试和功能测试可以保证PHP版本升级后能及时发现问题。
四、上线方案
灰度,再灰度,这个是我们的原则。上线的时候,先对一个机房的服务器PHP版本进行升级,再逐步覆盖到所有的服务器。与此同时,上线之后,要密切留意是否error.log里面是否包含“PHP Fatal error”的错误日志,服务器的响应状态是否正常。
---------------------
H. 将Linux服务器上的PHP版本 从5.3.8升级到5.4.0任意版本,会对现存的PHP程序有影响吗
同一个大版本(都是php5)没事儿,直接升级问题不大。升级前习惯上备份下相关文件就好。