Centos7系统Vestacp升级到PHP7.2

定了,我将在这台服务器上面测试使用PHP7.2再决定是否用于其他服务器上面。

由于部分服务器将在近期到期而又无力续费便在之前买了一个便宜的机子来放几个闲置的网站之类的。在使用面板上纠结不已,虽然纯命令行管理看着比较高端大气但是我不会啊~~~没办法,只有用面板才能创建搭建一个站点。
于是在几轮重装过后我还是选择了Vestacp,而国产宝塔面板呢由于其便利而一般在当CDN的机子上才使用,这个我思索很久感觉还是会当宿主机使用。

安装完面板后由于其PHP是5.6版本的而打算升级,不过由于我之前转载的教程的源还没有7.1/7.2的包只能另外寻找教程了。本来我比较中意使用Debian系统的,可是在升级使用PHP7.2时教程安装了PHP-FPM而Apache又不会搭配使用而转换Centos系统了。

###1.安装epel和remi源(这个不是必须的,先确定一下yum源里有这两个源)
ll /etc/yum.repos.d
#如果没有,需要以下命令来安装
 # 如果是CentOS 6的话,就把地址里的7改成6
 wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
 wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
 rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm
 # 升级remi源
 yum -y --enablerepo=remi update remi-release
###2.停止httpd并卸载旧版本php
#如果仅安装了nginx,那么要停掉php-fpm
service php-fpm stop
#如果安装了apache,那要停止httpd
service httpd stop
#卸载旧版本php
yum -y remove php
#PHP7.1
yum -y --enablerepo=remi-php71 install php php-pear php-bcmath php-mysqlnd php-gd php-common php-fpm php-intl php-cli php-xml php-pecl-apcu php-pdo php-gmp php-process php-pecl-imagick php-devel php-mbstring
#PHP7.2
yum -y --enablerepo=remi-php72 install php php-pear php-bcmath php-mysqlnd php-gd php-common php-fpm php-intl php-cli php-xml php-pecl-apcu php-pdo php-gmp php-process php-pecl-imagick php-devel php-mbstring
###3.安装memcache客户端以及opcache
yum -y --enablerepo=remi-php71 install php-opcache php-memcache
##yum -y --enablerepo=remi-php72 install php-opcache php-redis
###4.重启php-fpm或是httpd
#启动php-fpm
service php-fpm start
#启动httpd
service httpd start
[#code]
我在安装教程走是没有遇到包错误,而在把<code>yum -y --enablerepo=remi-php71 install php-opcache php-memcache</code>换成<code>yum -y --enablerepo=remi-php72 install php-opcache php-redis</code>时却遇到了教程里出现的类似错误<code>Error: Package: php-pecl-igbinary-2.0.6~RC1-1.el7.remi.5.6.x86_64 (remi-test)</code>但是按照教程执行<code>yum remove php-pecl-igbinary-2.0.6~RC1-1.el7.remi.5.6.x86_64</code>却又提示包不存在,在一番搜索后没有办法只能先不安装php-redis先了。

重启Apache后创建了个phpinfo();看了版本是7.2了,但是没有Redis扩展而不得不另外编译安装。这次扩展竟然安装上传转记的教程又又些不同了(⊙﹏⊙)文件路径不一样了。最后添加redis.so的php.ini路径还是安装phpinfo上的来才正确。
Redis服务器本来是下载源码编译的但是貌似能运行但是却无法连接而改yum
[code]
#remi源
###安装redis
yum install redis
###启动redis
systemctl start redis.service
###设置redis开机启动
systemctl enable redis.service
###设置redis密码
打开文件/etc/redis.conf,找到其中的#
 requirepass foobared,去掉前面的#,并把foobared改成你的密码。

redis.conf文件默认在/etc目录下,你可以更改它的位置和名字,更改后,注意在文件/usr/lib/systemd/system/redis.service中,把ExecStart=/usr/bin/redis-server
 /etc/redis/6379.conf --daemonize no中的redis.conf的路径改成的新的路径。

Ps:php-redis[关于phpize]

//具体用哪个要取决于你的phpize文件所在的目录,这时你应该用 whereis phpize 来查看路径 
//其中 php-config 和 phpize 所在的目录是相同的,比如上面我用 /usr/bin/phpize,则在这一步我用 ./configure –with-php-config=/usr/bin/php-config 

参考资料:
https://blog.csdn.net/ligang_csdn/article/details/76850602
http://www.wangjunwei.com/website/vestacp/635.html
https://blog.csdn.net/baidu_30000217/article/details/51481138
相关资料:
https://blog.csdn.net/musicrabbit/article/details/9729941
https://stneng.com/debian-8-x-jessie%E4%B8%8Bapache%E4%B8%ADphp5%E4%B8%8Ephp7%E5%85%B1%E5%AD%98/
(⊙﹏⊙)

超越自我吧

2018年4月22日

发布者

ChiuYut

咦?我是谁?这是什么地方? Ya ha!我是ChiuYut!这里是我的小破站!