CentOS7にPHP7を個別にインストールします。今ではクラウドやレンタルサーバーのものをそのまま使うことが多いので、あまり使う機会がなく忘れちゃってました。その備忘録です。
今回はシステムにプリインストールされてるものを上書きします。これをするのは本当に稀なので余計に忘れる。
いまは、クラウド・レンタルサーバーのサービスでインスタンス・イメージが用意されています。
(管理画面で選んでクリックするだけで済む。)
このへんのインストール作業はしない傾向です。まずはそれを検討しましょう。
今回はあくまで、『個人の力でやる』ためのものです。
EPEL拡張パッケージのインストール
RedHat系Linuxにphp7をインストールするには、EPEL拡張パッケージが必要です。
yum install epel-release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp-srv2.kddilabs.jp
* epel: ftp.iij.ad.jp
* extras: ftp-srv2.kddilabs.jp
* updates: ftp-srv2.kddilabs.jp
Package epel-release-7-12.noarch already installed and latest version
Nothing to do
(すでに入っていることもある。)
remiリポジトリ追加
PHP7はremiリポジトリが必要なので追加します。
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
Retrieving http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
warning: /var/tmp/rpm-tmp.GBhAJ6: Header V4 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:remi-release-7.7-1.el7.remi ################################# [100%]
'remi-release-7' の数字はRedHat, CentOSのメジャー番号に対応。
PHP7のインストール
これで準備完了です。ここでやっとPHP7をインストールします。
yum install --enablerepo=remi,remi-php74 php php-mbstring
'remi-php74' はPHPのバージョン。
php-mbstringはPHPの拡張パッケージ。必要なものを入れる。
PHP5.6の上書きに注意する
CentOS7には標準でphp.x86_64のパッケージがインストール済みです。
しかしPHPのバージョンが5.6で、しかもphpコマンドもインストールされていません。
yum install php
を実行したらPHP5.6が使える状態になります。
今回のインストール方法はそれを上書きします。
yum list installed | grep php
php.x86_64 7.4.2-1.el7.remi @remi-php74
php-cli.x86_64 7.4.2-1.el7.remi @remi-php74
php-common.x86_64 7.4.2-1.el7.remi @remi-php74
php-json.x86_64 7.4.2-1.el7.remi @remi-php74
php-mbstring.x86_64 7.4.2-1.el7.remi @remi-php74
php-pecl-mcrypt.x86_64 1.0.3-1.el7.remi.7.4 @remi-php74
バージョンごとに共存させるにはphpenvなどを使うので、今回は省略しました。
PHP5.6で動かすアプリやシステムがすでにあって、PHP7にバージョンアップすると不都合があるときは注意。