LoginSignup
1
1

More than 5 years have passed since last update.

モバイルフレンドリーなサイトのキャッシュ

Posted at

デバイスによってコンテンツを出し分けたい場合のキャッシュについて。

構成

アプリケーションで返したコンテンツをVarnishでキャッシュする(Cache Proxyパターン)。
デバイスごとにコンテンツを出し分けたい場合、以下の処理が必要になる。

  • アプリケーション
    UA判定し、ページ(テンプレート)を出し分ける
  • Varnish
    UA判定し、キャッシュを出し分ける

実装

自前でライブラリを作ってもいいのですが、PHPに関しては、以下のライブラリが使えます。
https://github.com/serbanghita/Mobile-Detect

様々なフレームワークに対応したモジュールがありますし、なんと、Varnishのモジュールも提供されています!(3rd party)
https://github.com/willemk/varnish-mobiletranslate

これで、Varnishと(PHP)アプリケーションのUA判定を統一して管理することが出来て便利です!
※ちなみに、VarnishとアプリケーションのUA判定が統一されていないと、キャッシュの不具合が起きるので要注意です。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1