基本無料で提供されているCDNサービスCloudFlareですが
初期設定だとキャッシュするファイルが限定されています。
CloudFlareのサポートページに対応キャッシュファイルの一覧があります。
キャッシュされるファイルの種類
初期設定では、以下の36種類が対応しています。
- 画像系
- bmp, tif/tiff, pict, jpg/jpeg, ps, eps, gif, svg, svgz, ico, png, webp
- テキスト系
- css, js, ejs
- ドキュメントファイル等
- doc, docx, xls, xlsx, csv, ppt, pptx, pdf
- その他
- ttf, woff, woff2, eot, otf, swf, pls, mid/midi, class, jar
非対応ファイルをキャッシュさせるには?
実は、非対応のファイルでもキャッシュさせる方法はあります。
それは、ファイルのURLの最後に、?(適当な文字列)=(.対応している拡張子)をつけるだけです。
例えば、www.example.com/a.zipをキャッシュさせたいのであれば
www.example.com/a.zip?a=.jsという風になります。
すでにクエリパラメーターが設定されている、という場合であれば?を&に置き換え
www.example.com/a.zip?x=a&a=.jsといった感じにします。
それ以外の方法
CloudFlareのPage Rulesにキャッシュルールを追加する方法もあります。
Page RulesからCreate Page Ruleを選び、www.example.com以下がすべてキャッシュされるよう
URL matchsをwww.example.com/*にCache LevelをCache Everythingに設定します。
URLの最後に文字列を加えるという方法はやや邪道な気がしますが、簡単に使えます。
一方ですべてをキャッシュさせる設定は、一度設定するだけで済みます。
場合によって適宜使い分けるといいかもしれません。