ワードプレスのダッシュボードにはサイトヘルスステータスという項目があり、セキュリティや
パフォーマンスをチェックできます。
長い間手を付けていなかったので、見直してみました。
サイトヘルスの現状を確認
上図が改善前のサイトヘルスステータスです。致命的な問題も発生している様で、対策が必要です。
対策を調べる為、表示された文章をグーグル検索してみると、mysqlとPHPのバージョンを更新することで改善できるようです。
mysqlとPHPは、どちらもレンタルサーバー(ロリポップ)のユーザー専用ページ経由でバージョン変更をする必要がある為、更新が疎かになっていました。
遅くなりましたが、改善に取り掛かります。
PHPのバージョンアップ
「“post_max_size” の値が “upload_max_filesize” の値より小さくなっています」と「Authorizationヘッダーがありません」はPHPをバージョンアップすることで解決できました。
更新の流れは、ロリポップユーザー専用ページログイン→サーバーの管理・設定→PHP設定→バージョンの変更、と進み操作上特に難しい所はありませんでした。
更新前は、「7.1(CGI版)」という設定でしたが、他の方の経験談を参考にして「7.4(モジュール版)」に変更した所、メッセージが二つとも消えました。(画像では8.0(CGI版)を選んでいますが後で変更しています。)
mysqlのバージョンアップ
ロリポップライトプランでのmysqlのバージョンアップの流れは下記の様になります。
- 現在のデータベースをエクスポートする
- サーバーに新しいmysqlデータベースをつくる
- エクスポートしたデータベースをインポートする
- WordPressの「wp-confing.phpの設定」を変更する
自分はロリポップのライトプランを契約していますが、ライトプランは、使用できるデータベースは1つだけです。
つまり、新規データベースをつくる場合、既存のデータベースを削除しなければならず、失敗しないよう事前に準備をしておきましょう。
また、ワードプレスファイルの編集を行う為、事前にテキストエディタを用意しておきます。(自分はMac OSに付属している「TextEdit」を使用しました。)
1 現在のデータベースをエクスポートする
ロリポップのユーザー専用ページから「サーバーの管理・設定」→「データベース」→「PHPMyAdminを開く」と進みます。
ログイン画面でユーザ名、パスワード、サーバの選択を入力します。
ログイン後、上部の「エクスポート」をクリックして、「エクスポート方法:詳細」を選びます。
生成オプション 追加コマンド: 下図の枠で囲んだ項目にチェックを入れます
最後に、実行ボタンを押し、ファイルを保存します。
2 サーバーに新しいデータベースをつくる
前述したように、ロリポップのライトプランではデータベースを一つしかつくれませんので、新規データベースをつくる前に、既存のデータベースを削除します。
データベースを削除するとデータベース作成画面が表示されるので新しく作成します。
サーバーの選択では最新のmysqlのサーバー(Ver5.7.36)を選びましたが、データベース名やパスワードは、変更による不具合が発生した場合を考慮して、従来のものをそのまま使用しています。
3 エクスポートしたデータベースをインポートする
1では旧バージョンのデータベースをエクスポートしているので、ファイル名も古いデータベースの名前です。
旧名のままインポートすると、エラーが発生するのでファイル名を新しいサーバー名に変更します。
エクスポートしたファイル名を、新たなデータベースを作成後に上図の「サーバー」に表示される名前に変更します。
ただし、「.(ドット)」ではなく「_(アンダーバー)」を使用します。
再度、PHPMyAdminに入り、上部の「インポート」をクリックします。
「インポートするファイル」で、(名前変更済の)エクスポートファイルを選択して、実行します。
「wp-confing.phpの設定」を変更する
インポート終了後、FTPソフトを利用して、ワードプレスの「wp-config.php」をダウンロードします。
テキストエディタを使用して必要箇所の修正を行い、ファイルの入れ替えを行います。
ロリポップの場合、ユーザー専用ページから「ロリポップ!FTP」にログインします。。
変更が必要な箇所を抜粋しますのでテキストエディタで編集してください。
ただし、新規データベースを作成する際に旧データベースの設定を流用しておけば、編集は少なくてすみます。
基本的に、ロリポップのデータベース画面に編集箇所に必要な情報は記載されています。(下記参照)
- WordPressのデータベース名→データベース名
- MySQLのユーザー名→ユーザー名
- MySQLのパスワード→「パスワード確認」で表示されるパスワード
- MySQLのホスト名→サーバー
自分の場合、MySQLのホスト名の変更だけでした。
PHPとmysqlの更新後
更新を終えるとサイトヘルスも良好となり一安心です。
今回は、一度古いデータベースを削除しないとmysqlのバージョンアップができなかったので多少緊張しましたが、同条件の方のレポートなどを見ていた為、作業時間も30分程度で終えられました。