本記事では、ConoHA WING(コノハウィング)の高速化「キャッシュ機能」の設定について解説しています。
キャッシュは、大きく分けると下記2つに分類されます。
- コンテンツキャッシュ
- ブラウザキャッシュ
どちらもウェブサイトを高速化するために必要なものですが、「それぞれの違いや設定すべきかどうか分からない」という方も多いのではないでしょうか。
本記事は、専門サイトの知見をもとに、初心者にも分かりやすいように解説していきます。
- ConoHa WING を現在利用していて、サイト表示速度を改善したい人
- キャッシュ機能について勉強しているブロガー、駆け出しエンジニア
コンテンツキャッシュについて
コンテンツキャッシュについて、GMOペパボが運営するヘムテルでは、下記のように解説されています。
Webサイトの表示速度向上や安定した表示に役立つ機能です。 お客様のWebサイトの表示内容を、コンテンツキャッシュサーバーに一時的に記録(キャッシュ)し、同じWebサイトにアクセスがあった場合、コンテンツキャッシュサーバーから応答します。
コンテンツキャッシュの設定方法 – ヘテムル
つまり、ウェブサイトの表示内容をコンピューターに一時的に記録することで、同じウェブサイトにアクセスがあった場合、コンピューターから応答してくれるというわけです。
一時的に記録してくれるおかげで、スムーズな通信が可能になります。
動的なページもキャッシュされるとは?
Webサイトのページをキャッシュし、表示を高速化します。動的なページもキャッシュされるのでご注意ください。
とConoHaコントロールパネルで注意書きが書かれていることから「???」と感じた方も多いのではないでしょうか。
動的なページとは、文章や画像がアクセスする度に変わり、ユーザーごとに作られるWEBページのことです。
具体的には、以下に該当するページが動的な方法で作成されています。
- コラム
- 新着情報
- 口コミページ
- ショッピングカート
- 検索エンジン
- 会員専用サイト
参照:コラム WEBサイトの「静的ページ」「動的ページ」の違いとは?|株式会社インフォネット
つまり、更新した情報をすぐに反映させたいのであれば、注意したほうがいいということです。
動的コンテンツのキャッシュは難しいが、現在は技術の進歩で可能
動的コンテンツについてもう少し詳しく知りたい方へ、少し補足しておきます。
一般的に、動的コンテンツは、閲覧者からのリクエストや閲覧のタイミングによって表示するコンテンツを生成するため、あらかじめコンテンツをキャッシュしておくことが困難と言われてきました。
しかし、CDN(コンテンツデリバリーネットワーク)を利用したり、JavaScriptの一部をキャッシュすることで動的コンテンツをキャッシュすることができます。
参照:動的コンテンツをキャッシュする方法とは? | ライムライト・ネットワークス
WordPressで一般的なブログを運用している場合は、ONにして大丈夫
WordPressテーマによっては、キャッシュ機能があらかじめ搭載されています。
場合によっては干渉してしまうため、開発者のサイトを見たり、フォーラムを利用するのがよいでしょう。
しかしながら、別サービスのため必ずしも回答がもらえるとは限らず、質問自体ができない場合もあります。
そこで、ConoHa WINGのサポートに電話をかけて「どうするべきか?」技術担当者に聞いたところ、以下のような説明を受けました。
コンテンツの問題になるので一概には言えませんが、ブログの記事を投稿するだけなら、動的なページには基本的にならない。
アクセスする度に違う画像が表示されたりする場合、動的なページが生成されている可能性がある。
※私が話の内容をまとめたものです。参考程度にご活用ください。
ブラウザキャッシュについて
ブラウザにコンテンツをキャッシュするExpiresヘッダを付与することで、表示を高速化します。
とConoHaコントロールパネルで解説されています。
公式ご利用ガイドでも詳しく解説されています。
こちらの機能をONにすることで、キャッシュを指示するHTTPレスポンスヘッダの1つであるExpiresヘッダを付与、Webページへ再アクセスした際にブラウザに保存済みのキャッシュデータを読み込むようになります。これによりWebサイト表示の高速化、転送量・サーバー負荷の削減を図れます。
参照:ブラウザキャッシュ機能を使う|ConoHa WINGサポート
つまり、サーバー側にデータを保存するのではなく、ブラウザ(ChromeやSafariなどホームページを見るときに使うソフト)にデータを保存することで、ウェブサイトの表示を高速化するというわけです。
ブラウザキャッシュを利用することで、再度同じページにユーザーがアクセスした際により速くページを表示させることができるようになるので、ユーザー体験の質が向上します。
Expires ヘッダーは、キャッシュされたサイト リソースのコピーが期限切れになるまでの期間を示す HTTP ヘッダーの一種です。 この日時より前であれば、ブラウザはキャッシュからサイト リソースを取得できます。
翻訳:2 Ways to Add Expires Headers in WordPress
まとめ
この記事の内容を3行でまとめています。
- コンテンツキャッシュは、動的なページもキャッシュするので注意
- 一般的なWordPressブログは場合、高速化目的ならどちらもONにして大丈夫
- ただし、記事リライトの頻度が高い場合、ユーザーに最新の情報が表示されない場合があるので注意
詳しくは、お手数ですが、本文をご覧ください。