カテゴリー
コミュニケーションズ

「phpの更新が必要です」WordPress、Debian 9でphp7.0から7.4へ、GCP環境

このマジシャンのサイトですが、ダッシュボードのサイトヘルスステータスに「1件の致命的な問題」「サイトが PHP の非常に古いバージョン (7.0.33-0+deb9u7) を実行しており、更新をおすすめします」と表示されてます。いつからでしょうか?
レンタルサーバーを使っている場合はそこの管理画面から簡単に更新ができるようですが私の使っているGCP、Google Cloud Platformだとコマンドラインでインストールしないといけないようです。
Debian 9でphpは7.0から7.4に更新です。

ダッシュボードの警告画面

ダッシュボードのサイトヘルスステータス

phpのアップグレード

Google Cloud Platformの管理画面からSSH接続

phpのバージョンを確認
php -v

PHP 7.4をインストール

sudo apt update
sudo apt install -y curl wget gnupg2 ca-certificates lsb-release apt-transport-https
wget https://packages.sury.org/php/apt.gpg
sudo apt-key add apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.list
sudo apt update
sudo apt install -y php7.4 php7.4-cli php7.4-common
php -v

phpのバージョンを確認すると7.4に更新されている。

php -v
PHP 7.4.5 (cli) (built: Apr 19 2020 08:42:37) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.5, Copyright (c), by Zend Technologies

アパッチ、拡張機能のインストール

sudo apt install -y apache2 libapache2-mod-php7.4
sudo apt install -y php7.4-mysql
php -m | grep -i mysql

sudo apt install -y php7.4-mysql php7.4-dom php7.4-simplexml php7.4-ssh2 php7.4-xml php7.4-xmlreader php7.4-curl  php7.4-exif  php7.4-ftp php7.4-gd  php7.4-iconv php7.4-imagick php7.4-json  php7.4-mbstring php7.4-posix php7.4-sockets php7.4-tokenizer

参照
How To Install PHP 7.4 / 7.3 / 7.2 / 7.1 on Debian 10 / Debian 9

表示が消えない

php -vで確認すると7.4になっているがダッシュボードの警告は消えないで7.0のままです。

ダッシュボードのサイトヘルスステータス「1件の致命的な問題」

ドメイン直下に「phpinfo.php」のファイルを作成して以下を記述

<?php info();?>

ブラウザで接続すると7.0と表示されている。
調べた所「php -vで確認できるのはcliで稼働しているPHPのバージョンで、Apacheで稼働しているPHPのバージョンとは違うかもしれない。」だそうです。

デフォルトのphpバージョンを設定

$ sudo update-alternatives --config php

Update Debian to PHP 7.4

試行錯誤で以下のコマンドを入力するが解決せず。

sudo apt install php7.4-bcmath php7.4-bz2 php7.4-curl php7.4-intl php7.4-mbstring php7.4-mysql php7.4-readline php7.4-xml php7.4-zip`


sudo nano /etc/php/7.4/apache2/php.ini
F6でサーチで以下変更
upload_max_filesize = 32M 
post_max_size = 48M 
memory_limit = 256M 
max_execution_time = 600 
max_input_vars = 3000 
max_input_time = 1000

sudo a2enmod php7.4

sudo service apache2 restart

Upgrading to PHP 7.4
Install PHP 7.4 on Debian 10

「PHPの更新が必要です」が消えない場合の解決方法

以下で7.0を削除した所、警告が消える。

sudo apt purge php7.0 php7.0-common

Upgrade/Installation guide for PHP 7.4 on Ubuntu and Debian

コメント

なんだかんだでまる1日かかってしまいました。
とりあえず解決してよかったです。

その他の警告を消すためにテーマやプラグインを削除しました。
「imagickがインストールされていない」と言う警告を消す為に拡張機能をインストールしてます。
「オプションのモジュールzipがインストールされていないか、無効化されています。」と言う表示も出てましたがいつの間にかに消えました。

作成者: えいち / H

マジシャンのえいち / Hです。
東京でプロマジシャン|出張、派遣をやってます。
記事の感想、コメント、質問などはTwitterにお願いします。
フォローも良かったらお願いします。
Instagram / YouTube / Facebook