AlmaLinux 9にPHP8.3をインストールしよう!
ここでは、PHP8.3のインストール手順を掲載しています。
PHPのアンインストール
すでにPHPがインストールされている場合は、先に削除します。
[root@al9 ~]# dnf -y remove php php-*
Removed:
nginx-filesystem-1:1.20.1-14.el9_2.1.alma.1.noarch
oniguruma-6.9.6-1.el9.5.x86_64
php-cli-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-common-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-fpm-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-mbstring-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-mysqlnd-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-pdo-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64
php-xml-8.1.14-1.module_el9.2.0+24+ca6bd7c2.x86_64 Complete!
remiリポジトリの追加
標準のリポジトリには新しいPHPは用意されていないため、他のリポジトリから持ってくることにします。
[root@al9 ~]# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Retrieving http://rpms.remirepo.net/enterprise/remi-release-9.rpm warning: /var/tmp/rpm-tmp.N8JaK9: Header V4 RSA/SHA256 Signature, key ID 478f8947: NOKEY Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:remi-release-9.3-3.el9.remi ################################# [100%]
ちなみに初期設定でダウンロードしたEPELリポジトリと違い、remiリポジトリは、初めから無効化されています。
なので、必要な時に有効にしながら使用します。
PHP8.3のインストール
準備が整いました。一応どんなバージョンがあるか見てみましょう。
[root@al9 ~]# dnf -y module reset php
[root@al9 ~]# dnf --enablerepo=remi module list php
Remi's RPM repository for Enterprise Linux 9 - 314 kB/s | 1.8 MB 00:06 Last metadata expiration check: 0:00:05 ago on Fri Jan 12 16:23:50 2024. AlmaLinux 9 - AppStream Name Stream Profiles Summary php 8.1 common [d], devel, minimal PHP scripting language Remi's Modular repository for Enterprise Linux 9 - x86_64 Name Stream Profiles Summary php remi-7.4 common [d], devel, minimal PHP scripting language php remi-8.0 common [d], devel, minimal PHP scripting language php remi-8.1 common [d], devel, minimal PHP scripting language php remi-8.2 common [d], devel, minimal PHP scripting language php remi-8.3 common [d], devel, minimal PHP scripting language Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
それでは、最新のPHP8.3をインストールしてみます。
[root@al9 ~]# dnf --enablerepo=remi -y module install php:remi-8.3
Installed:
nginx-filesystem-1:1.20.1-14.el9_2.1.alma.1.noarch
oniguruma5php-6.9.9-1.el9.remi.x86_64
php-cli-8.3.1-1.el9.remi.x86_64
php-common-8.3.1-1.el9.remi.x86_64
php-fpm-8.3.1-1.el9.remi.x86_64
php-mbstring-8.3.1-1.el9.remi.x86_64
php-xml-8.3.1-1.el9.remi.x86_64
Complete!
バージョンを確認してみましょう。8.3.1になっていればOKです。
[root@al9 ~]# php -v
PHP 8.3.1 (cli) (built: Dec 20 2023 12:44:38) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.3.1, Copyright (c) Zend Technologies
データベースと連携するためのモジュールもインストールしておきます。
[root@al9 ~]# dnf --enablerepo=remi -y install php-mysqlnd
Installed:
php-mysqlnd-8.3.1-1.el9.remi.x86_64 php-pdo-8.3.1-1.el9.remi.x86_64 Complete!
PHPの設定
続いて、設定を行います。基本的に8.1と変わりません。
[root@al9 ~]# 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
[root@al9 ~]# vi /etc/php-fpm.d/www.conf
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
↓
listen.owner = apache
listen.group = apache
listen.mode = 0666
Apacheの再起動
念のため、Apacheを再起動しておきましょう。
[root@al9 ~]# systemctl restart php-fpm
[root@al9 ~]# systemctl restart httpd
ちなみに、もっと古いPHP7.4を使いたい場合は、remi-php8.3の代わりにremi-php7.4とするとインストール可能です。
[root@al9 ~]# dnf --enablerepo=remi -y module install php:remi-7.4
今回新しく登場したコマンド
[広告]
トップページ
AlmaLinux 9
○インストール準備
○仮想化準備(VMware)
○仮想化準備(Hyper-V)
○仮想化準備(Proxmox)
○基本操作
○導入
○セキュリティ対策
○Dynamic DNS
○NTPサーバ
○データベース
○WEBサーバ
○FTPサーバ
○メールサーバ
○DNSサーバ
○ブログシステム
○その他