CloudFront | 默认缓存键 | 通配符域名

0

【以下的问题经过翻译处理】 根据https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/understanding-the-cache-key.html,默认缓存键是CF 分配的名称,但是示例显示它是host header。

哪个是正确的?

我问这个问题是因为通配符域名(*.example.com)解析为CF 分配(CNAME),如果缓存键基于host header,它不会在不同的域之间缓存对象。(例如test.example.com和test2.example.com不会共享缓存的对象)

有没有办法克服这个问题?即我希望缓存键包括URI和实际的CF 分配名称,而不是host header。

谢谢, Roi

profile picture
EXPERTE
gefragt vor 6 Monaten19 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 你好,

我理解你读到的文档[1]中提到默认缓存键是CF分发名称,但实例显示其为host header,你对此有些困惑。但是请注意,实际上默认情况下缓存键并不包含host header。如果想包含host header,必须在“基于选择的请求标头缓存”中选择host header。文档中的引用是指,CloudFront默认域名默认包含在缓存键中,但不包含任何你自定义替代域名。

对于你的问题,除非将host header列入白名单,否则无论使用何种CNAME访问CloudFront内容,缓存键都将相同,因此给出的场景只会出现两个不同的缓存键。

希望这对你有所帮助。

[1] https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/understanding-the-cache-key.html

请注意,我非常重视您的反馈,如果您对此回复感到满意,请考虑点赞。

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen