我已经为默认行为(无缓存)设置了cloudfront,elb和我的ec2 web服务器,一切工作正常。只有1个原点(elb),原点路径是空的。 现在我想从web服务器(wildfly)像js/css那样缓存静态的东西,它们都在/ my-context/assets文件夹中提供cloudfront无法请求对象的行为
因此,我添加了一个新的行为与路径模式'/ my-context/assets/*'和使用相同原点的默认缓存设置。 这不工作,我的请求登录页面返回页面html本身,但所有的CSS/JS失败。请求/my-context/assets/a/b/some.css返回502,“CloudFront无法连接到原始地址”。
我也尝试为新行为设置一个新路径“/ my-context/assets”的起源(使用相同的elb),但它也失败。
我能说明如何使这项工作?或者这实际上是不可行的?
谢谢!
你绝对不需要第二个来源,并将原始路径设置为任何* prepends *由浏览器发送到请求路径的原始路径,因此您也不需要它。在第一种情况下(2种行为,1种起源),您是否已将“Host:”标题列入了您希望启用缓存的新行为的白名单? –
它的工作!谢谢! – klc
我会将其作为回答发布,如果您确认 - 您需要在新行为中将“Host:”标题列入白名单,对吧? –