アセットストレージの設定
ファイルとサーバーの構成
- アセットは 1 つの場所に保存してください(Web プロキシ を使用する場合を除く)。プロキシではない Imgix Source は 1 つの場所にしかマッピングできませんが、必要に応じて(例:テスト用と本番用)複数の Source を作成できます。
- ルートロケーション(例:Amazon S3 バケットやウェブフォルダ)内でアセットをフォルダに整理することは、分類の目的で問題ありません。その階層のフォルダは、Source にプレフィックスとして追加することで特定可能です。ただし、ルート内の複数フォルダから配信したい場合は、Source をルートに設定し、アセット URL 作成時にフォルダ名を含める必要があります。これがパフォーマンスと柔軟性の面で最適です。
- 提供したい各アセットの最高解像度バージョンのみを保存してください。Imgix は、高解像度のオリジン画像を 1 つ保存し、必要に応じて派生画像(サイズやトリミング違いなど)を生成する設計になっています。
- フォルダ名やファイル名に特殊文字を使用しないでください。 特殊文字は解決のためにエンコードが必要で、注意して扱わないと 404 エラーが発生する可能性があります。使用を避けるべき文字一覧
- アセットにフィンガープリントを付けて、自動的に更新・削除を管理しましょう。 Imgix のパージ機能 は迅速かつ徹底していますが、オリジン画像の更新は、ファイル名を変更し、それが使用されているすべての箇所を更新することで管理する方が望ましいです。詳しくは フィンガープリントガイド をご覧ください。
Cache-Control ヘッダー
Imgix は Cache-Control: max-age ヘッダーとの連携に柔軟性を提供しています。Google Cloud Storage を除くすべての Source タイプにおいて、デフォルトのキャッシュ TTL 動作設定は、オリジンキャッシュ TTL 値と Source の TTL 設定のうち小さい方を採用する Enforce Minimum(60 日)です。この設定は、ヘッダーのばらつきを尊重しつつ、ほとんどのユースケースに対応するデフォルト値を適用する最も簡単な方法です。他のユースケースでの一般的な設定は以下の通りです。詳細は キャッシュ設定の完全な説明 をご覧ください。
- 高度な Source 設定 において、すべての新しい Google Cloud Storage Source では Cache TTL 動作モードがデフォルトで Enforce Minimum に設定されています。これにより、ファイルにヘッダーがあるかどうかに関係なく、すべてのファイルに
max-age=1yr, publicが適用されます。これにより、すべてのファイルでキャッシュが有効になります。詳細は Google Cloud Storage 設定ガイド を参照してください。 - 異なるデフォルトの有効期限を使用したい場合は、Cache TTL 動作を Respect origin に設定し、デフォルト TTL 値を希望の値に変更してください。
- すべてのアセットに手動設定なしで同一の
max-age値を適用したい場合は、Cache TTL 動作を Override origin に設定し、Override TTL 値を必要に応じて変更してください。
Imgix に接続する際の注意点
- Imgix のサブドメイン名は慎重に選んでください。 一度 Source に紐づけられたサブドメイン名は、たとえその Source を削除しても別の Source に移行することはできません(カスタムサブドメインと標準サブド