XServer VPS クラウドでWordPressを高速化:KUSANAGIとRedisの設定手順を実機で検証【2026年版】

当ページのリンクには広告が含まれています。
xserver vps wordpress kusanagi redis speed guide 2026
🔧 インフラエンジニア歴12年(2026年時点)
☁️ AWS実務4年目(2026年時点)・Azure経験あり
🖥️ Xserverでブログ運用中

提供を受けた検証について:本記事の検証には、エックスサーバー株式会社から無償提供を受けた「XServer VPS クラウド」の利用環境(VPS〈Linux〉・メモリ4GB/vCPU 4コア・ディスク50GB/1ヶ月)を使っています。記事の内容・評価は当サイトが独自に行っており、提供元の確認・承認を受けていません。

結論:XServer VPS クラウドではセットアップスクリプト「WordPress(KUSANAGI)」でKUSANAGI 9が入りますが、引数なしの kusanagi init と --email のない provision はKUSANAGI 9.11.5では通りませんでした。RedisはOS標準のValkey 8.0かRedis 7で足り、再起動後も自動で動きます。ページキャッシュを有効にすると、サーバー内から測ったTTFBは約34ms→約6〜7msでした。

XServer VPS クラウドの公式サイトを見る※ 月額2,068円〜(4GB・12ヶ月契約時の月額換算・税込)/1ヶ月契約は2,480円

XServer VPS(通常版)は2026年9月17日から新規受付を一時停止しています。本記事は後継のXServer VPS クラウドで、KUSANAGIの導入からRedis・ページキャッシュまでを2026年9月27〜28日に実機で確かめた手順です。

目次

検証した環境と、始める前に決めておくことは?

OSはAlmaLinux 8.9・9.3・CentOS Stream 9のどれかを選び、パケットフィルターで22・80・443番を開けます。

項目 検証した環境
サーバー XServer VPS クラウド(メモリ4GB・vCPU 4コア・ディスク50GB)
選んだOS AlmaLinux 9.3(セットアップ中の更新で9.8になった)
KUSANAGI 9.11.5(nginx 1.31.5・PHP 8.3.33・MariaDB 10.11.18)
かかった時間 再インストールの実行から約13分(うちKUSANAGIのセットアップ約5分)

公式の対応OS一覧に無いAlmaLinux 9.0では、スクリプトを選べませんでした。22番は接続元を自分だけに絞ります。

ステップ1:セットアップ直後に何を確かめる?

SSHの鍵を登録しても、パスワードでのログインは有効のままでした。完了を待って止めます。

22番が開いた後もセットアップ(cloud-init)は約5分続いていました。

cloud-init status --wait

完了後も、sshdの実効設定(sshd -T)でパスワード認証とrootのログインが有効でした。次のファイルを作り、別の端末で鍵のログインを確かめてから今の接続を閉じます。

# /etc/ssh/sshd_config.d/01-hardening.conf
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin prohibit-password
sshd -t && systemctl reload sshd

変更後、パスワードだけの接続は拒否され、鍵では入れました。

続けて dnf -y upgrade で更新します。動いているカーネルは9.3のままだったので、needs-restarting -r で要ると出たら再起動します。

ステップ2:kusanagi init と provision はどう打てば通る?

引数なしの init も、--email のない provision もエラーで止まります。必須の引数を付けて打ちます。

kusanagi init は引数なしだと「--passwd と --dbrootpass が必要」で終わり、対話形式になりません。次の形で約4分で完了しました。

kusanagi init --passwd 'kusanagiユーザーのパスワード' --nophrase \
  --dbrootpass 'MariaDBのrootパスワード' --basicauthpass 'Basic認証のパスワード'

provision は --email か --noemail が必須で、--dbpass は8文字以上です。WordPressの初期設定まで済ませるなら管理者の情報も渡します(公式の説明)。

kusanagi provision --wp --fqdn example.com --email you@example.com \
  --adminuser 管理者名 --adminpass '管理者のパスワード' --adminemail you@example.com \
  --title "サイト名" --dbpass '8文字以上のパスワード' プロファイル名

よくあるつまずき:provision が最後に失敗し、httpsが自己署名のまま

WordPressの導入と証明書の取得は成功したのに、最後のnginxの設定確認が存在しない場所を見て provision failed になりました。httpsは自己署名のままだったので、次のコマンドで読み直すと、外からの接続で発行元がLet’s Encrypt・証明書の検証エラーなしに変わりました。

/opt/kusanagi/nginx131/sbin/nginx -t && systemctl reload nginx131

証明書の自動更新(毎週のcron)のときに読み直されるかは、今回の期間では確かめられていません。また、作ったWordPressはインデックスを許す設定なので、試験用なら止めます。wp-cliとPHPは既定のPATHに無いので、PATHを通してkusanagiユーザーで打ちます。

export PATH=/opt/kusanagi/php-8.3/bin:/opt/kusanagi/bin:$PATH
sudo -u kusanagi env PATH=$PATH wp option update blog_public 0 --path=/home/kusanagi/プロファイル名/DocumentRoot
XServer VPS クラウドの料金を公式で見る※ 月額2,068円〜(4GB・12ヶ月契約時の月額換算・税込)/1ヶ月契約は2,480円

ステップ3:Redisはソースからビルドすべき?

OS標準のValkey 8.0かRedis 7で足ります。どちらもsystemdで動き、root以外の利用者で、再起動後も自動で戻りました。

KUSANAGIのPHPにはRedis用の拡張(PhpRedis 6.3.0)が最初から入っています。サーバー側はどちらか一方を入れます(同じ6379番のため)。

# Valkey 8.0(Redis互換)
dnf -y install valkey
systemctl enable --now valkey

# または Redis 7
dnf -y module enable redis:7
dnf -y install redis
systemctl enable --now redis

WordPress側はプラグイン「Redis Object Cache」を入れて有効にし、Status: Connected になれば接続できています。

cd /home/kusanagi/プロファイル名/DocumentRoot
sudo -u kusanagi env PATH=$PATH wp plugin install redis-cache --activate
sudo -u kusanagi env PATH=$PATH wp redis enable
sudo -u kusanagi env PATH=$PATH wp redis status
入れ方 版 動く利用者(ps) 再起動の後
dnf(Valkey) 8.0.10 valkey 手で起動せずに接続(確認)
dnf(Redis 7) 7.2.16 redis 手で起動せずに接続(確認)
公式ソースからビルド 8.10.2 起動した利用者(手順どおりならroot) 自分でsystemdへの登録が要る

どの方法でも、ページを開く前後でヒット数が増えました。ValkeyとRedis 7は、それぞれ再起動の後にも Status: Connected とヒット数の増加を確かめています。なお、プラグインにはValkeyの版が「7.2.4」と出ます(Redisの版として7.2.4を返すため)。

ソースからビルドすると3か所で止まりました。①gccが無い ②既定の make は同梱モジュールまで作り、CMakeやRustが無いと失敗する(中核だけなら make build redis=README)③配布の redis.conf の loadmodule 4行で起動しない。

既定では待ち受けは127.0.0.1と::1だけ(ss -ltnp)、メモリの上限(maxmemory)は0=上限なしでした。キャッシュ専用なら上限を決め、追い出し方を allkeys-lru にしておくと、最近使われていないキーから消されます(Redis公式のKey evictionも、特に理由がなければよい既定としています)。

ステップ4:「サーバーキャッシュ設定」はVPSのどこにある?

VPSにはサーバーパネルのキャッシュ設定はありません。KUSANAGIのコマンドで有効にします。

kusanagi fcache on プロファイル名   # nginxのFastCGIキャッシュ
kusanagi bcache on プロファイル名   # KUSANAGIのページキャッシュ
状態 TTFBの中央値(20回) 応答を返したもの
ページキャッシュなし(Redisだけ) 34.4ms WordPress(PHP)
fcache on 6.1ms nginxのキャッシュ
bcache on 7.2ms KUSANAGIのページキャッシュ
両方 on 6.2ms KUSANAGIのページキャッシュ
ページキャッシュなし(最後にもう一度) 34.0ms WordPress(PHP)

測り方は、サーバーの中から自分自身へトップページを取り、温め2回の後の20回の中央値です(9月27日・ネットワークの揺れを含まない)。curlの既定の名乗りでは bcache の対象にならないので、ブラウザと同じ名乗りにそろえました。応答を返したものは、応答ヘッダー(x-f-cache・x-b-cache)で見分けています。

レンタルサーバーのサーバーキャッシュは200と404をキャッシュする仕様ですが(公式マニュアル)、KUSANAGIの fcache は200だけを10分です。実機でも同じ404を続けて開いてキャッシュから返ることはありませんでした。更新が表示に出ないときは kusanagi fcache clear プロファイル名(bcache も同じ)で消せます。

まとめ:XServer VPS クラウドでKUSANAGIを使うときの要点は?

①SSHのパスワードログインを止める ②init・provision は必須の引数を付け、最後にnginxを読み直す ③RedisはOS標準で入れる ④ページキャッシュを fcache か bcache で有効にする、の順で進めます。

XServer VPS クラウドの公式サイトを見る※ 月額2,068円〜(4GB・12ヶ月契約時の月額換算・税込)/1ヶ月契約は2,480円

よくある質問

Redisが再起動の後に止まらないようにするには?
OS標準のValkeyかRedis 7を入れて systemctl enable --now で起動すれば、再起動の後も自動で起動します(当サイトは両方で確認)。ソースからビルドした場合は、自分でsystemdに登録する必要があります。
Redisとページキャッシュは両方使えますか?
使えます。Redis(オブジェクトキャッシュ)はデータベースの問い合わせ結果を、fcache・bcacheはページ全体を保持します。当サイトの測定では、TTFBを縮めたのはページキャッシュで、Redisだけでは約34msでした。
通常版のXServer VPSはもう申し込めませんか?
2026年9月17日から新規受付を停止しており、再開の時期は未定です(公式)。これから申し込むならクラウドが対象になります。
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

ITインフラエンジニア歴12年、クラウド(AWSがメイン、一部Azure)の実務は4年目(いずれも2026年時点)。社会人向けの3DCGスクールを2026年9月に卒業。Windows 11 + RTX 4070 Ti SUPER の自宅環境で実際に手を動かしながら、インフラ・クラウド・AI・3DCGの技術記事を書いています。

コメント

コメントする

CAPTCHA


目次