You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CloudFront修改Strapi响应头导致特定路由返回404问题咨询

根因说明
  1. CloudFront默认缓存行为仅转发预设的白名单请求头,Strapi的/content-manager/*、/admin/*、/i18n/*三类管理侧接口强依赖Authorization(登录鉴权凭证)、Accept(指定响应格式为JSON)两个请求头,默认配置下这两个头不会被转发到源站ALB。
  2. 缺失Authorization头时,Strapi会判定请求未登录,出于安全隐藏内部接口的策略,直接返回404而非鉴权失败状态码;缺失Accept头时Strapi会默认返回text/plain格式的错误响应,和你观测到的返回特征完全匹配。
  3. 放行所有请求头的临时方案会大幅降低CloudFront缓存命中率,还存在敏感请求头、登录态被缓存的安全风险,不建议长期使用。
最优配置方案
  • 针对管理侧动态接口单独创建CloudFront行为规则,路径匹配规则填写/admin/*、/content-manager/*、/i18n/*,规则优先级高于静态资源规则:
    • 请求头转发配置:选择「包含指定请求头」,仅添加Authorization、Accept、Origin三个必填头即可
    • 缓存配置:因为该类接口均为用户登录后的动态请求,直接将最小/最大/默认TTL全部设置为0,关闭缓存,避免出现登录态串号、内容更新不及时的问题
    • 查询字符串配置:转发所有查询字符串
    • Cookie配置:若Strapi未启用Cookie存储登录态,可关闭Cookie转发,否则仅转发登录相关的Cookie键即可
  • 针对/uploads/*、/plugins/*、/admin/assets/*等静态资源路径,保留默认缓存策略即可,不需要转发额外请求头,保证缓存命中率。
  • 额外校验:确认CloudFront回源协议和ALB监听协议一致,避免协议不匹配导致的请求异常。

内容的提问来源于stack exchange,提问作者kutya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 15:48:00