Contents
CentOS6系のPHP5.xをPHP7.xに更新したメモ
環境
ここのサーバーでは、下記の環境でphp7.3更新作業を行いました
Scientific Linux 6.9
nginx
php-fpm
php5.6
更新前に作業
php5.xを削除するので、/etc/php.iniのバックアップ
php-fpmも再設定が必要なので、/etc/php-fpm.d/www.confをバックアップ
現在のPHP確認
$ php -v<br /> PHP 5.6.35 (cli) (built: Mar 29 2018 07:37:47)<br /> Copyright (c) 1997-2016 The PHP Group<br /> Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
旧バージョンの削除
# yum remove php-*
(zshだと php-¥*)
epelとremiのインストール確認
remiは6系のものでOK
(remiは最新のもので、priority=1)推薦
# vi /etc/yum.repos.d/remi-php73.repo<br /> [remi-php73]<br /> priority=1<br /> ....
/etc/yum.repo.d/内にremi-php7*.repoがあることを確認
念の為、yumのキャッシュを削除
# yum clean all
7.xをインストール
nginx版# yum install --enablerepo=remi-php73 php php-fpm php-mcrypt php-cli php-common php-devel php-gd php-mbstring php-mysqlnd php-opcache php-pdo php-pear php-pecl-apcu php-pecl-zip php-process php-xml
Apache版# yum -y install --enablerepo=remi,remi-php73 php php-devel php-mbstring php-mysql php-pdo php-gd
補足:——————————————————————
libargon2の依存関係でアップデート処理が止まる場合は、remiのリポジトリを最新にするか再インストール
https://www.riscascape.net/archives/16990
php7.3の確認
$ php -v<br /> PHP 7.3.0 (cli) (built: Dec 4 2018 20:10:48) ( NTS )<br /> Copyright (c) 1997-2018 The PHP Group<br /> Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies<br /> with Zend OPcache v7.3.0, Copyright (c) 1999-2018, by Zend Technologies
ZendEngineもZendOPcacheに変更され、APCuも導入済みとなっております
OPcache、APCuの設定については、初期設定のまま使用します
php-fpmの設定
下記環境は、個々に違いがあるので自分の環境に合わせてくださいね
# vi /etc/php-fpm.d/www.conf<br /> listen = 127.0.0.1:9000<br /> listen.owner = nobody<br /> listen.group = nobody<br /> listen.mode = 0660<br /> user = apache<br /> group = apache<br /> pm = static<br />
保存後、php-fpmを再起動します。
# /etc/init.d/php-fpm restart
php.iniの再設定
default_charset = UTF-8<br /> mbstring.language = Japanese<br /> mbstring.encoding_translation = Off<br /> mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII<br /> date.timezone = Asia/Tokyo<br /> expose_php = Offmemory_limit = 128M<br /> post_max_size = 128M<br /> upload_max_filesize = 128M<br /> memory_limit = 128M<br /> date.timezone = "Asia/Tokyo"<br />
保存後、nginx再起動
# /etc/init.d/nginx restart