Webサイト開設メモ(その6)PHPをバージョンアップしてみた

Web Site

PHPのバージョンを現在の 7.2.24 から WordPress で推奨されている 7.4 にバージョンアップしてみました。その時の手順のメモです。

WordPressで

WordPressのダッシュボードに、「PHPの更新を推奨」「サイトがPHPの安全でないバージョン(7.2.24)で動作しています。」「PHPの最低推奨バージョンは7.4です」等々と記載されています。

「サイトヘルス画面」では、”致命的な問題”と記載されています。

当初、普通にインストールしたら PHP7.2.24 がインストールされたわけですが、PHP7.4にバージョンアップしてみることにしました。

PHPのバージョンアップ

現在の環境を確認します。

[root@^ ~]# cat /etc/redhat-release
CentOS Stream release 8
[root@^ ~]# php --version
PHP 7.2.24 (cli) (built: Oct 22 2019 08:28:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

PHPのモジュールを確認して、7.4 をインストールします。

[root@^ ~]# dnf module list php
メタデータの期限切れの最終確認: 1:15:09 時間前の 2021年09月28日 19時22分38秒 に 実施しました。
CentOS Stream 8 - AppStream
Name     Stream         Profiles                       Summary
php      7.2 [d][e]     common [d], devel, minimal     PHP scripting language
php      7.3            common [d], devel, minimal     PHP scripting language
php      7.4            common [d], devel, minimal     PHP scripting language

ヒント: [d]efault, [e]nabled, [x]disabled, [i]nstalled

[root@^ ~]# dnf module install php:7.4
メタデータの期限切れの最終確認: 1:15:50 時間前の 2021年09月28日 19時22分38秒 に 実施しました。
依存関係が解決しました。
オペレーションは、モジュール 'php' ストリーム '7.2' を ストリーム '7.4' へと切り替える結果となります
エラー: It is not possible to switch enabled streams of a module unless explicitly enabled via configuration option module_stream_switch.
It is recommended to rather remove all installed content from the module, and reset the module using 'dnf module reset <module_name>' command. After you reset the module, you can install the other stream.

一旦、resetしてから、もう一度インストールします。

[root@^ ~]# dnf module reset php
メタデータの期限切れの最終確認: 1:44:14 時間前の 2021年09月28日 19時22分38秒 に 実施しました。
依存関係が解決しました。
================================================================================
 パッケージ        アーキテクチャー バージョン          リポジトリー      サイズ
================================================================================
モジュールの再設定中:
 php

トランザクションの概要
================================================================================

これでよろしいですか? [y/N]: y
完了しました!

[root@^ ~]# dnf module install php:7.4
メタデータの期限切れの最終確認: 1:44:31 時間前の 2021年09月28日 19時22分38秒 に 実施しました。
依存関係が解決しました。
================================================================================
 パッケージ    Arch    バージョン                              Repo       サイズ
================================================================================
アップグレード:
 php           x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  1.5 M
 php-cli       x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  3.1 M
 php-common    x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  702 k
 php-fpm       x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  1.6 M
 php-gd        x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream   85 k
 php-json      x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream   74 k
 php-mbstring  x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  484 k
 php-mysqlnd   x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  193 k
 php-pdo       x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  123 k
 php-xml       x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  174 k
 php-xmlrpc    x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream   90 k
依存関係のインストール:
 oniguruma     x86_64  6.8.2-2.el8                             appstream  187 k
弱い依存関係のインストール:
 php-opcache   x86_64  7.4.19-1.module_el8.5.0+815+1c4fd2e5    appstream  267 k
モジュールプロファイルのインストール中:
 php/common
モジュールストリームの有効化中:
 php                   7.4

トランザクションの概要
================================================================================
インストール     2 パッケージ
アップグレード  11 パッケージ

ダウンロードサイズの合計: 8.5 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
(1/13): php-opcache-7.4.19-1.module_el8.5.0+815 1.1 MB/s | 267 kB     00:00
(2/13): oniguruma-6.8.2-2.el8.x86_64.rpm        681 kB/s | 187 kB     00:00
(3/13): php-common-7.4.19-1.module_el8.5.0+815+ 3.0 MB/s | 702 kB     00:00
(4/13): php-7.4.19-1.module_el8.5.0+815+1c4fd2e 2.6 MB/s | 1.5 MB     00:00
(5/13): php-gd-7.4.19-1.module_el8.5.0+815+1c4f 2.0 MB/s |  85 kB     00:00
(6/13): php-json-7.4.19-1.module_el8.5.0+815+1c 1.8 MB/s |  74 kB     00:00
(7/13): php-fpm-7.4.19-1.module_el8.5.0+815+1c4 7.5 MB/s | 1.6 MB     00:00
(8/13): php-mysqlnd-7.4.19-1.module_el8.5.0+815 3.0 MB/s | 193 kB     00:00
(9/13): php-mbstring-7.4.19-1.module_el8.5.0+81 4.0 MB/s | 484 kB     00:00
(10/13): php-pdo-7.4.19-1.module_el8.5.0+815+1c 2.7 MB/s | 123 kB     00:00
(11/13): php-xml-7.4.19-1.module_el8.5.0+815+1c 3.4 MB/s | 174 kB     00:00
(12/13): php-xmlrpc-7.4.19-1.module_el8.5.0+815 2.5 MB/s |  90 kB     00:00
(13/13): php-cli-7.4.19-1.module_el8.5.0+815+1c 2.2 MB/s | 3.1 MB     00:01
--------------------------------------------------------------------------------
合計                                            4.5 MB/s | 8.5 MB     00:01
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  準備             :                                                        1/1
  scriptletの実行中: php-common-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_   1/1
  アップグレード中 : php-common-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x8    1/24
警告: /etc/php.ini は /etc/php.ini.rpmnew として作成されました。

  アップグレード中 : php-pdo-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    2/24
  アップグレード中 : php-xml-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    3/24
  インストール中   : php-opcache-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x    4/24
  アップグレード中 : php-cli-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    5/24
  アップグレード中 : php-fpm-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    6/24
警告: /etc/php-fpm.d/www.conf は /etc/php-fpm.d/www.conf.rpmnew として作成されました。

  scriptletの実行中: php-fpm-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    6/24
  アップグレード中 : php-json-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_    7/24
  インストール中   : oniguruma-6.8.2-2.el8.x86_64                          8/24
  scriptletの実行中: oniguruma-6.8.2-2.el8.x86_64                          8/24
  アップグレード中 : php-mbstring-7.4.19-1.module_el8.5.0+815+1c4fd2e5.    9/24
  アップグレード中 : php-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64      10/24
  アップグレード中 : php-xmlrpc-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x8   11/24
  アップグレード中 : php-mysqlnd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x   12/24
  アップグレード中 : php-gd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64   13/24
  整理             : php-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_64      14/24
  整理             : php-cli-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   15/24
  scriptletの実行中: php-fpm-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   16/24
  整理             : php-fpm-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   16/24
  整理             : php-xmlrpc-7.2.24-1.module_el8.2.0+313+b04d0a66.x8   17/24
  整理             : php-xml-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   18/24
  整理             : php-mysqlnd-7.2.24-1.module_el8.2.0+313+b04d0a66.x   19/24
  整理             : php-pdo-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   20/24
  整理             : php-mbstring-7.2.24-1.module_el8.2.0+313+b04d0a66.   21/24
  整理             : php-json-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_   22/24
  整理             : php-gd-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_64   23/24
  整理             : php-common-7.2.24-1.module_el8.2.0+313+b04d0a66.x8   24/24
  scriptletの実行中: php-common-7.2.24-1.module_el8.2.0+313+b04d0a66.x8   24/24
  scriptletの実行中: php-fpm-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6   24/24
  検証             : oniguruma-6.8.2-2.el8.x86_64                          1/24
  検証             : php-opcache-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x    2/24
  検証             : php-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64       3/24
  検証             : php-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_64       4/24
  検証             : php-cli-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    5/24
  検証             : php-cli-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6    6/24
  検証             : php-common-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x8    7/24
  検証             : php-common-7.2.24-1.module_el8.2.0+313+b04d0a66.x8    8/24
  検証             : php-fpm-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6    9/24
  検証             : php-fpm-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   10/24
  検証             : php-gd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64   11/24
  検証             : php-gd-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_64   12/24
  検証             : php-json-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_   13/24
  検証             : php-json-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_   14/24
  検証             : php-mbstring-7.4.19-1.module_el8.5.0+815+1c4fd2e5.   15/24
  検証             : php-mbstring-7.2.24-1.module_el8.2.0+313+b04d0a66.   16/24
  検証             : php-mysqlnd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x   17/24
  検証             : php-mysqlnd-7.2.24-1.module_el8.2.0+313+b04d0a66.x   18/24
  検証             : php-pdo-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6   19/24
  検証             : php-pdo-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   20/24
  検証             : php-xml-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_6   21/24
  検証             : php-xml-7.2.24-1.module_el8.2.0+313+b04d0a66.x86_6   22/24
  検証             : php-xmlrpc-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x8   23/24
  検証             : php-xmlrpc-7.2.24-1.module_el8.2.0+313+b04d0a66.x8   24/24

アップグレード済み:
  php-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-cli-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-common-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-fpm-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-gd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-json-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-mbstring-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-mysqlnd-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-pdo-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-xml-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
  php-xmlrpc-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64
インストール済み:
  oniguruma-6.8.2-2.el8.x86_64
  php-opcache-7.4.19-1.module_el8.5.0+815+1c4fd2e5.x86_64

完了しました!

インストールが完了しました。PHPのバージョンを確認してみます。

[root@^ ~]# php --version
PHP 7.4.19 (cli) (built: May  4 2021 11:06:37) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.19, Copyright (c), by Zend Technologies

PHP7.4 にバージョンアップされました。
WordPressの動作、表示は問題ないようですが、ブラウザからphpMyAdminに接続しようとすると不具合が発生しました。

このエラーは、phpMyAdminを導入した際に出たエラーと同じです。(Webサイト開設メモ(その2) 参照)。この時と同じように「session」のパーミッションを変更します。(所有者名(例): namae とします。)

[root@^ ~]# cd /var/lib/php
[root@^ php]# ls -l
合計 16
drwxrwx--- 2 root apache 4096  6月  3 03:53 opcache
drwxr-xr-x 2 root root   4096  6月  3 03:53 peclxml
drwxrwx--- 2 root apache 4096  6月  3 03:53 session
drwxrwx--- 2 root apache 4096  6月  3 03:53 wsdlcache
[root@^ php]# chown namae:namae session

これで接続できるようになりました。

参考

CentOs8 php7.4をインストールする
CentOS8 に PHP7.4 インストール



タイトルとURLをコピーしました