サイトアイコン ex1-lab

【Ubuntu】RedisでWordPressとNextcloudのキャッシュを有効化

wordpress_logo

wordpress_logo

WordPressで「永続オブジェクトキャッシュを使用してください」と表示される

WordPress の管理画面のヘルスチェックで「永続オブジェクトキャッシュを使用してください」と表示されました。

この警告は、パフォーマンス向上のために メモリキャッシュ(永続オブジェクトキャッシュ) を導入するように警告が出ています

永続オブジェクトキャッシュとは?

WordPressでは、ページやデータベースのクエリ結果などをオブジェクトキャッシュとして一時的にメモリ上に保存できます。ただし、デフォルトではPHPプロセス終了とともにキャッシュが消えます。

永続オブジェクトキャッシュを使用すれば、キャッシュ内容をメモリに保持したまま再利用できるため、DBアクセスが大幅に減り、高速化と負荷軽減につながります。

Ubuntu + Nginx 環境でよく使われるキャッシュバックエンドは「Redis」ですので、このRedisの導入方法を説明します

Redisのインストール

aptコマンドでRedisのインストールします。
PHPのバージョンによっては php8.x-redis パッケージになる場合もあります。

$ sudo apt update
$ sudo apt install redis-server php-redis

Redisの起動と自動起動設定

Redis を起動及び自動起動するには次のコマンドを使います。

# 自動起動
$ sudo systemctl enable redis

# Redisの起動
$ sudo systemctl start redis

この、redis.service が「エイリアス(別名)ユニット」として扱われていて、enable の対象として扱えないために起きるエラーです。

$ sudo systemctl enable redis
Failed to enable unit: Refusing to operate on alias name or linked unit file: redis.service

代わりに、本体のサービス名である redis-server を使ってください。

# 自動起動
$ sudo systemctl enable redis-server

# Redisの起動
$ sudo systemctl start redis-server

WordPress側の設定

Redis Object Cache プラグインをインストールします

管理画面」 → 「プラグイン」 → 「Redis Object Cache」で検索し、インストールします。
その後、プラグインの設定画面で「Enable Object Cache」をクリックするだけで有効します。

wp-config.php」に以下の設定を追加します

$ sudo vim  /var/www/html/wp-config.php 
define('WP_REDIS_HOST', '127.0.0.1');

プラグインを有効にして設定を追加したら、再度ヘルスチェックをおこない「永続オブジェクトキャッシュが使用されています」と表示されれば成功です。

モバイルバージョンを終了