Azure CDN Url 重写缓存不友好

Azure CDN Url rewrite is not cache friendly

我正在尝试在另一个 CDN 之上设置 Azure 标准 CDN(不要问),我有以下重写 url 操作来映射路径:

它正在运行,但 Azure CDN 不会缓存响应,即使我有第二个操作并显式缓存覆盖也是如此。 我的 Azure CDN 中的查询字符串缓存行为 设置设置为 "Cache every unique URL"。我错过了什么?

这是回复 headers 我得到:

HTTP/2 200 OK
cache-control: private, no-transform, immutable, max-age=604800
content-length: 48247
content-type: image/jpeg
last-modified: Thu, 18 Jun 2020 10:40:13 GMT
accept-ranges: bytes
etag: "ca5d81db6ff9266ad8fb95bc0e0daf33"
vary: Accept,User-Agent
server: Cloudinary
x-cache: TCP_MISS
x-request-id: b2bc7991c7f737acf00e07627c4e0d9a
strict-transport-security: max-age=604800
server-timing: fastly;dur=1;start=2020-06-18T17:34:56.853Z;desc=hit,rtt;dur=1
timing-allow-origin: *
access-control-allow-origin: *
access-control-expose-headers: Content-Length,ETag,Server-Timing,Vary
x-azure-ref-originshield: 0wKXr....
x-azure-ref: 0wKXr...
date: Thu, 18 Jun 2020 17:34:56 GMT
X-Firefox-Spdy: h2

cache-control 设置为 7 天(原始 CDN 默认值)并且 Azure 的 x-cache 始终是 TCP_MISS :(

得到微软支持的回复:

a web page response marked as private can be cached by a desktop browser, but not a content delivery network (CDN).

基本上,Azure CDN 遵循 cache-control: private 并且不允许更改行为。唯一的选择是修改原始响应。