centos 安装PHP7并且与其他版本共存并且为PHP7安装redis扩展
centos 安裝PHP7并且與其他版本共存
wget?-c?-Ophp-7.1.5.tar.gz?http://cn2.php.net/get/php-7.1.5.tar.gz/from/this/mirror tar?-xvf?php-7.1.5.tar.gz cd?php-7.1.5在安裝之前首先要搞定一些依賴,不過有一些依賴我在安裝PHP5.6.30的時候都安裝過了,還有少數(shù)部分依賴沒有安裝,那么我也給出全新的依賴誰讓我們是伸手黨,安裝過了重新安裝也沒啥
yum?install?libxml2?libxml2-devel?openssl?openssl-devel?bzip2?bzip2-devel?libcurl?libcurl-devel?libjpeg?libjpeg-devel?libpng?libpng-devel?freetype?freetype-devel?gmp?gmp-devel?libmcrypt?libmcrypt-devel?readline?readline-devel?libxslt?libxslt-devel上面的依賴安裝好后,那么就是配置一下PHP7 要安裝的路徑與開啟的模塊等, 這里要說一下與mysqlq鏈接的配置,默認的一個配置的路徑是 --with-mysql-sock=/tmp/mysql.sock
這是默認路徑,在確保mysql啟動的狀態(tài)下看看 這個mysql.sock在不,如果不存在,使用下面命令找一下
find?/?-name?mysql.sock應該會顯示具體的路徑,然后把地址替換了上面的配置的地址,如果是阿里云主機有RDS數(shù)據(jù)庫或有專用的數(shù)據(jù)庫服務器,那個參數(shù)就可以直接干掉,當然你創(chuàng)建一個軟鏈接也是可以的。
?
./configure?\ --prefix=/usr/local/php7?\ --exec-prefix=/usr/local/php7?\ --bindir=/usr/local/php7/bin?\ --sbindir=/usr/local/php7/sbin?\ --includedir=/usr/local/php7/include?\ --libdir=/usr/local/php7/lib/php?\ --mandir=/usr/local/php7/php/man?\ --with-config-file-path=/usr/local/php7/etc?\ --with-mysql-sock=/var/lib/mysql/mysql.sock?\ --with-mcrypt=/usr/include?\ --with-mhash?\ --with-openssl?\ --with-mysqli=shared,mysqlnd?\ --with-pdo-mysql=shared,mysqlnd?\ --with-gd?\ --with-iconv?\ --with-zlib?\ --enable-zip?\ --enable-inline-optimization?\ --enable-sockets?\ --enable-soap?\ --enable-session?\ --with-curl?\ --enable-opcache?\ --enable-fpm?\ --with-fpm-user=nginx?\ --with-fpm-group=nginx?\ make?&&?make?install安裝好后,來設置PHP7的配置文件:php.ini php-fpm.conf和php-fpm啟動腳本
cp?./php.ini-production?/usr/local/php7/etc/php.ini cp?./sapi/fpm/php-fpm.conf?/usr/local/php7/etc/php-fpm.conf cp?/usr/local/php7/etc/php-fpm.d/www.conf.default?/usr/local/php7/etc/php-fpm.d/www.conf cp?./sapi/fpm/init.d.php-fpm?/etc/init.d/php7-fpm chmod?755?/etc/init.d/php7-fpm上面的命令執(zhí)行后,來修改一下/usr/local/php7/etc/php-fpm.d目錄下的www.conf里的 listen = 127.0.0.1:9000為listen = 127.0.0.1:9001
?
如果有老版本的php-fpm使用了9000端口,那么PHP7的fpm端口要修改成9001,具體你自己定
?
把php7-fpm加入開機啟動
chkconfig?--add?php7-fpm chkconfig?php7-fpm?on啟動php7-fpm
service?php7-fpm?start service?php7-fpm?stop service?php7-fpm?restart service?php7-fpm?reloadstart,啟動PHP的FastCGI進程
stop,強制終止PHP的FastCGI進程
quit,平滑終止PHP的FastCGI進程
restart, 重啟PHP的FastCGI進程
reload, 重新加載PHP的php.ini
logrotate, 重新啟用log文件
?
?
PHP7-fpm重動完成后,來配置一個nginx可以使用PHP7
fastcgi_pass??127.0.0.1:9001;PHP7安裝redis
phpredis在php7、php5下都有不同的版本,裝岔了可能會編譯報錯,所以在安裝之前請先看下自己的PHP是啥版本。
我的Redis裝的是redis3.2.3版本。
用phpinfo()查看安裝的php信息。
確認是php7后開始安裝。
下載地址: git clone https://github.com/phpredis/phpredis.git? (現(xiàn)已支持PHP7)
然后進入文件的目錄,開始重新編譯phpize:
cd?phpredis /usr/local/php7/bin/phpize ./configure?--with-php-config=/usr/local/php7/bin/php-config? ? ?注意這個php-config文件有的版本是在/usr/local/php/bin下,裝的時候多找找
最后在/usr/local/php7/etc/php.ini 里面加入:extension=redis.so ? php.ini文件也是藏匿在lib、etc、bin這仨之一,裝的時候多找找
重啟HTTP應用程序如:nginx
這時候再次打開phpinfo()頁面,搜索redis看能不能找到
大功告成
[附加說明:如果是php7.2以上 mcrypt擴展默認被移除,需要自動安裝]
如果以上方法不行,參考下面步驟處理
從?mcrypt庫地址?下載適用版本,然后解壓
wget?http://pecl.php.net/get/mcrypt-1.0.1.tgz?
tar zxvf mcrypt-1.1.1.tgz
cd mcrypt-xxx
/usr/local/php7.2.10/bin/phpize? ?#此處的phpize是php7.2以上安裝目錄地址
./configure --with-php-config=/usr/local/php7.2.10/bin/php-config
make && make install
最后配置php.ini
最后配置php的擴展配置,添加extension=mcrypt.so就可以了
轉載于:https://blog.51cto.com/happyliu/1954337
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的centos 安装PHP7并且与其他版本共存并且为PHP7安装redis扩展的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 稍稍乱入的CNN,本文依然是学习周莫烦视
- 下一篇: php关联Apache和nginx