WordPress 永続オブジェクトキャッシュAPC設定を設定して高速化 (エックスサーバー)

概要説明

WordPressの永続オブジェクトキャッシュ対応。エックスサーバーでは標準でapcが使用可能。サーバーのキャッシュ周りの設定によっては動作が安定しない場合があります。

WordPress 永続オブジェクトキャッシュAPC設定を設定して高速化 (エックスサーバー)

エックスサーバーでは「APCu」が標準で利用できるようなので対応してみる

エックスサーバー公式ページ

キャッシュ用のファイルをダウンロード

object-cache.php 修正

object-cache.php
// 直接ファイルにアクセスしたらエラーになる処理
!defined( 'ABSPATH' ) and exit;

// ACPに対応していないサーバーではキャッシュを使用しない
if (!function_exists('apcu_fetch')) {
    return false;
}

// 管理画面はキャッシュ対象外(ヘルスチェックページは対象)
if (is_admin() && !($_SERVER['SCRIPT_NAME'] == '/wp-admin/site-health.php')) {
    return false;
}

// WordPressにログインしている場合はキャッシュクリア
$login_flag = 0;
foreach ($_COOKIE as $key => $value){
    if (false !== strpos($key, 'wordpress_logged_in_')) {
        $login_flag = 1;
    }
}
if ( $login_flag ) {
    if (function_exists('apcu_clear_cache')) {
        apcu_clear_cache();
    } else if (function_exists('apc_clear_cache')) {
        apc_clear_cache();
    }
}

object-cache.php ファイルの先頭に上記を追加

ファイルアップロード

path
/wp-content/object-cache.php

記事編集時にもキャッシュをクリアするように修正

functions.php
/*----------------------------------------------------
 APCキャッシュを記事編集時に全てクリアする
----------------------------------------------------*/
if ( !function_exists( 'apc_clear_cache_post' ) ){
    function apc_clear_cache_post($post) {
        if (function_exists('apcu_clear_cache')) {
            apcu_clear_cache();
        } else if (function_exists('apc_clear_cache')) {
            apc_clear_cache();
        }
    }
    add_action('save_post', 'apc_clear_cache_post');
}

Query Monitor プラグインを使用して動作確認

WordPress 永続オブジェクトキャッシュAPC設定を設定して高速化 (エックスサーバー)

オブジェクトキャッシュ無効

WordPress 永続オブジェクトキャッシュAPC設定を設定して高速化 (エックスサーバー)

オブジェクトキャッシュ有効

「ログインしている場合はキャッシュクリア」の部分をコメントアウトしてQuery Monitorにてキャッシュ有効時の値が確認できます

エックスサーバー側のキャッシュ設定

Xアクセラレータ

Xアクセラレータ Ver.1

サーバーキャッシュ

ON

ブラウザキャッシュ

ON[全ての静的ファイル]

上記設定で今のところ問題なく稼働できています

WordPress Developer Resources

関連機能

  1. WordPress Contact Form 7 禁止ワードと日本語判定によるスパム判定処理

  2. 投稿ページ以外でタグ機能を有効化

  3. WordPressのpost_typeを指定してビジュアルエディタを無効にする

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

他のやつと自分をくらべんな
まずは自分に勝つことを考えろ

銀魂
by 坂田銀時

Profile

PAGE TOP
Amazon プライム対象