CentOS 7にPHP7.4をインストールしよう!
ここでは、PHP7.4のインストール手順を掲載しています。
※CentOS 7のサポートは2024年6月をもって終了していますが、旧コンテンツとしてこちらのページは残しておきます。
PHP5.4から7.4へ
CentOS 7のPHPは通常5.4.16というバージョンがインストールされます。
もっと新しいバージョンのPHPを使いたい場合は以下の手順で更新を行ってください。
PHPのアンインストール
すでに5.4.16がインストールされている場合は、先にPHPを削除します。
[root@co7 ~]# yum -y remove php php-*
削除しました:
php.x86_64 0:5.4.16-48.el7 php-cli.x86_64 0:5.4.16-48.el7
php-common.x86_64 0:5.4.16-48.el7 php-mbstring.x86_64 0:5.4.16-48.el7
php-mysqlnd.x86_64 0:5.4.16-48.el7 php-pdo.x86_64 0:5.4.16-48.el7
完了しました!
remiリポジトリの追加
標準のリポジトリには新しいPHPは用意されていないため、他のリポジトリから持ってくることにします。
[root@co7 ~]# rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
https://rpms.remirepo.net/enterprise/remi-release-7.rpm を取得中 警告: /var/tmp/rpm-tmp.IgfjK3: ヘッダー V4 DSA/SHA1 Signature、鍵 ID 00f97f56: NOKE 準備しています... ################################# [100%] 更新中 / インストール中... 1:remi-release-7.9-6.el7.remi ################################# [100%]
ちなみに初期設定でダウンロードしたEPELリポジトリと違い、remiリポジトリは、初めから無効化されています。
なので、必要な時に有効にしながら使用します。
PHP7.4のインストール
PHP7.4をインストールします。
[root@co7 ~]# yum -y --enablerepo=epel,remi-php74 install php php-mbstring php-mysqlnd
インストール:
php.x86_64 0:7.4.33-15.el7.remi
php-mbstring.x86_64 0:7.4.33-15.el7.remi
php-mysqlnd.x86_64 0:7.4.33-15.el7.remi
依存性関連をインストールしました:
libsodium.x86_64 0:1.0.18-1.el7
oniguruma5php.x86_64 0:6.9.9-1.el7.remi
php-cli.x86_64 0:7.4.33-15.el7.remi
php-common.x86_64 0:7.4.33-15.el7.remi
php-json.x86_64 0:7.4.33-15.el7.remi
php-pdo.x86_64 0:7.4.33-15.el7.remi
php-sodium.x86_64 0:7.4.33-15.el7.remi
完了しました!
バージョンを確認してみましょう。7.4.33になっていればOKです。
[root@co7 ~]# php -v
PHP 7.4.33 (cli) (built: Jun 5 2024 05:05:14) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
PHPの設定
続いて、設定を行います。基本的に5.4.16と変わりません。
[root@co7 ~]# vi /etc/php.ini
expose_php = On
↓
expose_php = Off
;error_log = php_errors.log
↓
error_log = /var/log/httpd/php-error.log
[Data]
;date.timezone =
↓
date.timezone = Asia/Tokyo
[mbstring]
;mbstring.language = Japanese
;mbstring.internal_encoding =
;mbstring.http_input =
;mbstring.http_output =
;mbstring.encoding_translation = Off
;mbstring.detect_order = auto
;mbstring.substitute_character = none;
↓
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = pass
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
Apacheの再起動
念のため、Apacheを再起動しておきましょう。
[root@co7 ~]# systemctl restart httpd
他のバージョンをインストールするには…
remiリポジトリは以下のようにたーくさんインストールされます。
もっと古いPHP7.0や新しい8.2といったバージョンを使いたい場合は、以下のように有効化するリポジトリをremi-php74の代わりにremi-php70やremi-php82にするとインストール可能です。
[root@co7 ~]# ls -l /etc/yum.repos.d/remi*
-rw-r--r--. 1 root root 855 11月 28 2023 /etc/yum.repos.d/remi-modular.repo -rw-r--r--. 1 root root 456 11月 28 2023 /etc/yum.repos.d/remi-php54.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php70.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php71.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php72.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php73.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php74.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php80.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php81.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php82.repo -rw-r--r--. 1 root root 1314 11月 28 2023 /etc/yum.repos.d/remi-php83.repo -rw-r--r--. 1 root root 750 11月 28 2023 /etc/yum.repos.d/remi-safe.repo -rw-r--r--. 1 root root 2605 11月 28 2023 /etc/yum.repos.d/remi.repo
phpの後ろに付いている2桁の数字が、PHPのバージョンです。
上記の例だと、5.4~8.3が選べそうです。
8.3をインストールする場合は以下のように記載します。
[root@co7 ~]# yum -y install --enablerepo=epel,remi-php83 php php-mbstring php-mysqlnd
今回新しく登場したコマンド
[広告]
トップページ
CentOS 7
○準備
○仮想化準備(VMware)
○仮想化準備(Hyper-V)
○仮想化準備(Proxmox)
○基本操作
○導入
○セキュリティ対策
○Dynamic DNS
○NTPサーバ
○データベース
○WEBサーバ
○FTPサーバ
○メールサーバ
○DNSサーバ
○ブログシステム
○オンラインストレージ
○その他