‘WP Super Cache’ タグのついている投稿

【WordPress】WP Super Cacheで文字化け

2009 年 8 月 4 日 火曜日

WP Super Cacheを導入し、Cacheされたものをブラウジングすると、文字化けするようになった。
文字化けというよりは、文字コードが本来UTF-8なのにShift-JISで表示されるようになってしまい、文字化けしたような現象が起こっていた。
原因が分からず、とりあえず、WP Super Cacheを不使用にしていたのだが、やはり重くなってきたので、
HALF ON Super Cache Disabled, only legacy WP-Cache caching.
にチェックを入れ、
Super Cacheではなく、WP-Cacheを使用することで試してみた。
とりあえずの文字化けはなくなったが。。。
原因不明です。。。
誰か分かる人教えて下さい。

WordPressレッスンブック―ステップ・バイ・ステップ形式でマスターできる

著者/訳者:エビスコム

出版社:ソシム( 2008-10 )

定価:¥ 2,940

Amazon価格:¥ 2,940

単行本 ( 319 ページ )

ISBN-10 : 4883376222

ISBN-13 : 9784883376223


【WordPress】WP Super CacheをKtai-styleと併用するときの導入方法

2009 年 2 月 7 日 土曜日

WordPressはページを表示するたびにデータベースサーバーにアクセスし、リアルタイムにページを生成している。
そのため、サーバーへの負荷は大きなものとなる。
投稿数やアクセスが増加してきた時に、画面表示に時間がかかるようになってきた。
そこで、WP Super Cacheを導入してみた。
これは一度表示したページをキャッシュに保存し、再度同じページを表示するときにキャッシュを利用するため、サーバーへの負荷を減らせると同時に表示速度の高速化にもつながる。
しかし、なかなかうまく導入出来ずにはまってしまったので記述しておく。
さらに、Ktai-Styleとの併用はいろいろな問題を引き起こすらしく、導入に一手間加えないといけない。

まず、WP Super Cacheをサイトからダウンロード。
ダウンロードしたファイルを解凍し、いつものようにpluginsフォルダにアップロード。
wp-cache-config-sample.php を複製して wp-cache-config.php を作り、48 行目行目あたりの

$cache_rejected_user_agent
 = array ( 0 => 'bot', 1 => 'ia_archive', 2 => 'slurp', 3 => 'crawl', 4 => 'spider');

という記述の下に以下のコードを記述。(Ktai-styleを使用してない人は記述不要)

if (file_exists(ABSPATH. 'wp-content/plugins/ktai_style/patch-wpcache.php')) {
        include ABSPATH. 'wp-content/plugins/ktai_style/patch-wpcache.php';
}

wp-cache-config.php を wp-content/ 直下に置き、Wordpressのプラグイン設定画面からWP Super Cacheを有効にする。
そして、WP Super Cacheの設定画面で、

ON WP Cache and Super Cache enabled

を選択して更新。

さらにMod Rewrite Rulesのところも更新をおこない.htaccess の書き換えを行う。
ここで、生成された.htaccessをテキストエディタで開く。
下記のコメントで括られた部分が、WP Super Cacheによって書き加えられた部分。

# BEGIN WPSuperCache

# END WPSuperCache

この間にRewriteRuleが2箇所ある。
その直前にそれぞれ2箇所に下記のコードを書き加える。(Ktai-styleを使用してない人は記述不要)

RewriteCond %{HTTP_USER_AGENT} !^(DoCoMo/|J-PHONE/|J-EMULATOR/|Vodafone/|MOT(EMULATOR)?-|SoftBank/|[VS]emulator/|KDDI-|UP\.Browser|emobile/|Huawei/|Nokia|mixi-mobile-converter/)
RewriteCond %{HTTP_USER_AGENT} !(DDIPOCKET;|WILLCOM;|Opera\ Mini|Opera\ Mobi|PalmOS|Windows\ CE;|PDA;\ SL-|PlayStation\ Portable;|SONY/COM|Nitro)

以上で設定は終了。
実際の動作を確認してみる。
ログアウト状態、かつ、クッキーを削除した状態の PC で閲覧して、リロードしたとき、XHTMLソースの末尾に


のような表記があればPCでの動作は成功。
次に携帯で同じページを参照。
携帯用の表示になっていれば成功。
もう一度PC画面をリロードして、PC用の画面が出力されるかを確認。
PC用の画面が出力されたら成功。

もし、表示がおかしかったりしたら、再度上から設定を見直して欲しい。
どこかが間違えているはず。