WordPress のサイトヘルスに「永続オブジェクトキャッシュを使用してください」と表示されることがあります。この項目は推奨事項のため、必ずしも対応する必要はありませんが、今回はオープンソースのインメモリデータストアである Redis(レディス)または Valkey(ヴァルキー)を利用して対応してみました。本記事では、その手順を備忘録としてまとめます。
前提
本手順を行うには、サーバーへ SSH でログインでき、root 権限を持っていることが前提となります。また、サーバーOSは、AlmaLinux や Rocky Linux など、RHELクローン系の環境を想定しています。
レンタルサーバーなど root 権限が付与されない環境では、「APCu Manager」というプラグインを利用するのが手軽なようです。
永続オブジェクトキャッシュが必要な理由
WordPress はページ表示のたびにデータベースへ多数のクエリを実行します。標準のオブジェクトキャッシュはリクエスト単位でのみ有効なため、次のアクセス時には同じクエリが再び実行されます。Redis や Valkey などの永続オブジェクトキャッシュを導入すると、キャッシュをリクエスト間で共有できるため、データベース負荷の軽減やレスポンスタイムの改善が期待できます。特に、投稿数やユーザー数が多いサイト、autoload されたオプションデータが肥大化しているサイト、あるいはログインユーザー向けの動的処理が多いサイトでは、高い効果を得られる場合があります。
Redis・Valkey のインストール
RHELクローン系のサーバーOSでは、これまで Redisパッケージが標準リポジトリで提供されていました。しかし、RHELクローン系OSのバージョン10では、Redisのライセンス変更の影響により標準リポジトリから Redisパッケージが削除され、代わりにオープンソースのフォークである Valkey に置き換えられています。
まずはご自分がお使いのサーバーのバージョンを確認してください。
AlmaLinux release 10.2 (Lavender Lion) ←サーバーのバージョン
バージョン8または9の場合
サーバーOSがバージョン8または9の場合は、Redis をインストールします。
バージョン10の場合
サーバーOSがバージョン10の場合は、Valkey をインストールします。
(補足)Valkey は Redis OSS 7.2.4 をフォークして作られており、Redis の API との後方互換性を維持しているため、既存の WordPress用 Redisプラグインをそのまま使用できます。
Redis・Valkey のセキュリティ設定
設定によっては、認証なしで外部から誰でも Redis・Valkey に接続でき、データの読み書きができてしまう可能性があります。Redis・Valkey を起動する前にセキュリティ設定を確認しておきましょう。
Redis・Valkey の設定ファイルは以下の場所にあります。
- Redis:/etc/redis/redis.conf
- Valkey:/etc/valkey/valkey.conf
bind:待ち受けアドレスの制限
デフォルトでは以下の設定により、ローカルホストからのみ接続が許可されます。同じサーバー上の WordPress の永続オブジェクトキャッシュの利用であれば、このままにしておくのが最も安全です。
bind 127.0.0.1 -::1
protected-mode:保護モード
bind が未設定またはワイルドカードに近い状態でも、パスワード未設定なら外部からの接続を拒否する安全装置です。ローカル(同じサーバー内)からの接続には影響しません。この設定は yes のまま変更しないでください。
protected-mode yes
Redis・Valkey の起動と自動起動設定
バージョン8または9の場合
Redis の起動、および自動起動するように設定します。
sudo systemctl enable redis
動作していることを確認します。「PONG」と表示されていればOKです。
PONG
バージョン10の場合
Valkey の起動、および自動起動するように設定します。
sudo systemctl enable valkey
動作していることを確認します。「PONG」と表示されていればOKです。
PONG
PHP の Redis モジュールのインストール
バージョン8または9の場合
標準リポジトリに、PHP の Redis モジュールがありませんので EPELリポジトリを導入してからインストールしてください。
sudo dnf install php-redis
Redis モジュールが正しくインストールされていることを確認します。(「redis」と表示されていればOKです)
redis
バージョン10の場合
PHP の Redis モジュールをインストールします。(バージョン10の場合、EPELリポジトリは不要です)
Redis モジュールが正しくインストールされていることを確認します。(「redis」と表示されていればOKです)
redis
Redis Object Cache のインストール
WordPress のプラグイン「Redis Object Cache」をインストールします。
「プラグイン」→「プラグインを追加」の画面で「Redis Object Cache」を検索してインストールし、有効化してください。

Redis Object Cache の設定画面に遷移しますので「Enable Object Cache」ボタンをクリックしてください。

Status が「Connected」になれば設定完了です。

おわりに
永続オブジェクトキャッシュは、特別な設定をほとんど必要とせず、比較的手軽に導入できます。WordPress サイトのパフォーマンス改善を検討している方は、導入を試してみてはいかがでしょうか。


コメント