0

私はStorage Bucketを使ってGoogle Cloud CDNをバックエンドとしてセットアップし、実稼働環境に導入する前に自分のリクエストがキャッシュされているかどうかをテストしました。Google Cloud CDNはストレージバケットバックエンドを使用していくつかのパスしかキャッシュしていません

ここで、特定のパス/オブジェクトだけがキャッシュされていることがわかりました。ログビューア、応答要求とAge:ヘッダの存在下での待ち時間の差(確認。

すべての朝テストした後、私はそのパス下にあるすべてのオブジェクトはすべてているキャッシュとパスでないことがあるのパスを見つけることですそのパス下のオブジェクトががキャッシュされている。

PermisionsとCache-Control:ヘッダがgsutilのコマンドを使用してグローバルに設定された。

クラウドCDNの経験を持つ人から任意のポインタをいただければ幸いです。

をキャッシュされている

パス:キャッシュされていません http://assets.affcdn.net/1/rolling.gif

パス: http://assets.affcdn.net/v3/android.png

+1

こんにちは、最初から、パブリックキャッシュコントロールを無効にしてキャッシュを無効にする2番目のオブジェクトに内部ヘッダーが設定されているようです。 Cloud Storageチームは問題を再現し、それを検討しています。 – lot

+0

お返事ありがとうございます。それがバグとして確認されていることを知っておいてよかったです。クラウドCDNの問題追跡ツールで私が[バグを提出しました](https://issuetracker.google.com/issues/63056633)、ここで尋ねた後も間もなく解決がすぐにあります。 –

+0

オブジェクトを更新または変更しましたか?私はもはや問題を再現することはできません、両方のURLは現在期待どおりにキャッシュされています。 – lot

答えて

2

この問題は、非キャッシュファイルのパーミッションを編集し、「ALLUSERS」グループへの読み取りアクセス権を付与することによって解決しました。

これは、キャッシュ基準では、ファイルが公開されて共有されていることのみが記載されているため、よく説明されていませんでした。

GCPのドキュメントMaking Data Publicがこれまでに従っていましたが、これによってデータが公開されている間に、allUsers権限が失われてもキャッシュ可能にはなりません。

+0

そのオブジェクトがどのように「パブリック」だったのかを明確にすることはできますが、「allUsers」はありませんか?あなたがリンクしているドキュメントを作成するのは明らかではありません(システムの知識もありません)...少なくとも、この文書の周りのドキュメントを明確にしたいのですが – lot

+1

私がやったことを解決するにはしばらく時間がかかりましたここに! 「データを公開する」ドキュメントでは、コンソールを使用して「オブジェクトのグループを一般に読み取り可能にする」手順に従っていました。つまり、AllUsersをバケットパーミッションに「Storage Object Viewer」ロールで追加しました。 これにより、オブジェクトは一般にアクセス可能になりますが、オブジェクトはキャッシュされません。オブジェクトをキャッシュ可能にするには、個々のオブジェクトにallUsers読み取り権を追加する必要があります。 –

関連する問題