1. 程式人生 > >將centos6的php5.3升級為5.6,改變yum源

將centos6的php5.3升級為5.6,改變yum源

在阿里雲主機上,作業系統是Centos6,php版本是5.3。因為安裝Yii2.0的需要,我要升級php為5.4。因為還有5.5和5.6,當然要升到高版本了。我決定升到5.6。

首先,按照這裡的步驟 只有php-fpm沒有正確安裝,所以無法啟動之。下面試圖單獨安裝。 [[email protected] ~]# yum install php-fpm Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.tuna.tsinghua.edu.cn * updates: mirrors.aliyun.com * webtatic: uk.repo.webtatic.com Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php-fpm.x86_64 0:5.3.3-48.el6_8 will be installed --> Processing Dependency: php-common(x86-64) = 5.3.3-48.el6_8 for package: php-fpm-5.3.3-48.el6_8.x86_64 --> Running transaction check ---> Package php-common.x86_64 0:5.3.3-48.el6_8 will be installed --> Processing Conflict: php56w-common-5.6.26-1.w6.x86_64 conflicts php-common < 5.6 --> Finished Dependency Resolution Error: php56w-common conflicts with php-common You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest # yum install php56w-fpm
service php-fpm start Starting php-fpm: Failed loading /usr/lib64/php/modules/ZendGuardLoader.so: /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value [ OK ] (這個錯誤資訊是怎麼回事?此後一直伴隨,好在沒有其它影響,先不管它)  ============ 後續: 1、執行資料庫操作時,找不到PDO模組 試著用下面指令 # yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel freetype freetype-devel # --沒用 # yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-php-xml php56w-php-xmlrpc php56w-devel.x86_64  php-xml ## 常見錯誤處理  # yum install php56w-pdo
 #--成功 重啟php-fpm服務,這次yii出現新的錯誤 CDbConnection failed to open the DB connection: could not find driveryum install php56w-mysql 重啟服務,這次yii不出錯了,但渲染一小塊內容,確切地說,只渲染action自己的view的那一塊東西,layout/main.php的沒過來。 # yum install php56w-mbstring 這次渲染正確了。 發現在飯店查詢時出現錯誤: include(DOMDocument.php): failed to open stream: No such file or directory
yum install php56w-dom 成功了。(估計是在解析xml的時候出錯了。) 修改centos安裝源

分以下步驟進行

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
sudo vim /etc/yum.repos.d/remi.repo

進去把所有的 enabled 引數都改成 1

yum –enablerepo=remi update php* mysql*  

最後再進行一次升級的動作

yum -y update php*

這樣就可以啦!

附帶一提,我們可以直接在指令模式中查詢 php 的版本

php -v

====================================