2026年9月29日

2026年9月29日

WordPressのKeepAliveを有効にする方法

はじめに

この記事では、Webサイトのパフォーマンスを向上させるためにApacheやNginxでKeepAlive機能を有効にする方法について解説します。KeepAliveは同一のクライアントが何度もリソースを要求する場合に、サーバーとブラウザ間のTCP接続を維持することで、通信の遅延時間を減らし、レスポンス速度を向上させる機能です。

症状・背景

このテーマが必要になる主な場面:

  • サイトの読み込みが遅い
  • 静的コンテンツが多いサイトでパフォーマンスを改善したい
  • ユーザーからのフィードバックでページロード時間が長いと報告された場合
  • 画像やCSS、JavaScriptなどのリソースファイルが多くある場合

手順・設定方法

ステップ1: Apacheでの基本操作

# KeepAlive機能を有効にします
sudo nano /etc/apache2/sites-available/000-default.conf

# 以下を追加または修正します
<IfModule mod_proxy.c>
    ProxyPreserveHost On
</IfModule>

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

ステップ2: Nginxでの主要オプション/設定

# Nginxの設定ファイルを開きます
sudo nano /etc/nginx/sites-available/default

# 下記を追加または修正します
http {
    # KeepAliveのパラメータを設定
    keepalive_timeout 5;
}

ステップ3: Apacheでの応用/組み合わせ

# Apacheのメイン設定ファイルを開きます
sudo nano /etc/apache2/apache2.conf

# 下記を追加または修正します
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    ServerLimit         300
    MaxClients          300
    MaxRequestsPerChild   4000
</IfModule>

<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25%
    MaxSpareThreads      75%
    ThreadLimit           64
    ThreadsPerChild       16
    MaxClients          300
    MaxRequestsPerChild   0
</IfModule>

ステップ4: Apacheの実践/トラブルシュート

# Apacheを再起動して設定を適用します
sudo systemctl restart apache2

注意事項

  • KeepAliveTimeoutを適切な値に調整することが重要です。過度に長くすると、サーバー資源が占有されやすくなります。
  • MaxKeepAliveRequestsは、接続の維持中にサーバーから送信される最大リクエスト数を定義します。
  • NginxとApacheの設定ファイルは通常異なる場所にあるため、適切なファイルを開くことを確認してください。

まとめ

1. KeepAliveTimeout: デフォルト値は5秒ですが、サイトの特性に応じて調整が必要です。

2. MaxKeepAliveRequests: 接続中に送信される最大リクエスト数を定義します。通常は400〜800が適切です。

3. Apache設定ファイル: /etc/apache2/apache2.confかサイトの個別の設定ファイルで調整を行います。

4. Nginx設定ファイル: /etc/nginx/sites-available/defaultまたは/etc/nginx/nginx.confで変更を加えます。

5. 再起動: ApacheやNginxを再起動して変更を適用します。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ
▲