CentOS 7 yum安裝 PHP7.3 教程
原文地址:https://blog.csdn.net/laohe08/article/details/93166590
1 首先安裝EPEL源
yum install epel-release
安裝REMI源
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
2 安裝yum源管理工具
yum install yum-utils
3 安裝PHP7.3
yum install -y php73-php-fpm php73-php-cli php73-php-bcmath php73-php-gd php73-php-json php73-php-mbstring php73-php-mcrypt php73-php-mysqlnd php73-php-opcache php73-php-pdo php73-php-pecl-crypto php73-php-pecl-mcrypt php73-php-pecl-geoip php73-php-recode php73-php-snmp php73-php-soap php73-php-xmll
如果無法啟動可以重啟一下系統再試
設置開機自啟、運行服務:
systemctl enable php73-php-fpm
systemctl start php73-php-fpm
查找php.ini位置
[root@xxx etc]# find /etc/opt/remi/php73 -name php.ini
/etc/opt/remi/php73/php.ini
編輯/etc/opt/remi/php73/php.ini替換換 ;cgi.fix_pathinfo=1 為 cgi.fix_pathinfo=0 快捷命令:
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/opt/remi/php73/php.ini
這里是將參數cgi.fix_pathinfo置為0,作用是:
php.ini中的配置參數cgi.fix_pathinfo,它是用來對設置cgi模式下為php是否提供絕對路徑信息或PATH_INFO信息。沒有這個參數之前PHP設置絕對路徑PATH_TRANSLATED的值為SCRIPT_FILENAME,沒有PATH_INFO值。設置cgi.fix_pathinfo=1后,cgi設置完整的路徑信息PATH_TRANSLATED的值為SCRIPT_FILENAME,並且設置PATH_INFO信息;如果設為cgi.fix_pathinfo=0則只設置絕對路徑PATH_TRANSLATED的值為SCRIPT_FILENAME。cgi.fix_pathinfo的默認值是1。
nginx默認是不會設置PATH_INFO環境變量的的值,需要通過正則匹配設置SCRIPT_FILENAME,但這樣會帶來安全隱患,需要把cgi.fix_pathinfo=0設置為0。但是一旦關閉這個這場,PHP就獲取不到PATH_INFO信息,那些依賴PATH_INFO進行URL美化的程序就失效了。
重啟php73-php-fpm
systemctl restart php73-php-fpm
更多操作:
systemctl restart php73-php-fpm #重啟
systemctl start php73-php-fpm #啟動
systemctl stop php73-php-fpm #關閉
systemctl status php73-php-fpm #檢查狀態
查看PHP版本信息:
root@mf88.biz-service:~# php73 -v
PHP 7.3.0-1+(cli) (built: Dec 6 2018 20:24:55) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.0-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
更新 PHP
運行下面的命令系統就會更新所有可以更新的軟件包括 PHP
yum update