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

AWS Amplify使用jQuery ajax请求同站文件返回403错误如何解决

问题根因

该403错误与jQuery AJAX的写法无关,是AWS Amplify默认静态资源访问规则限制导致:Amplify默认拦截所有下划线开头的路径/文件的公开访问,用于避免内部配置、隐藏文件被未授权访问,你请求的/_status_normal.inc路径以下划线开头,命中了默认拦截规则。

解决方案

  • 方法1:通过Amplify控制台调整访问规则

    1. 登录AWS控制台,进入对应Amplify应用的管理页
    2. 左侧菜单选择「重写和重定向」,点击新增规则
    3. 按如下配置填写:
      • 源地址:/_status_normal.inc(如果需要批量开放同类型文件,可填写/_*.inc)
      • 目标地址:/{source}
      • 状态码:选择200(重写)
    4. 保存规则后等待1-2分钟配置生效即可
  • 方法2:通过amplify.yml配置文件修改(适合代码化管理配置的场景)
    在项目根目录的amplify.yml中添加customRules配置,示例如下:

    version: 1
    frontend:
      phases:
        # 你的原有构建配置保持不变
      customRules:
        - source: /_status_normal.inc
          target: /_status_normal.inc
          status: 200
    

    配置提交后触发一次Amplify构建部署,规则会自动生效。

验证

配置生效后你原来的jQuery AJAX代码无需任何修改即可正常运行:

$.ajax({type:"GET", url : "/_status_normal.inc"}).done(r=>console.log(r));

补充排查点

如果配置完成后仍然返回403,可优先检查两点:

  1. 确认项目构建产物的根目录下确实存在_status_normal.inc文件
  2. 检查Amplify构建日志的「部署」阶段,确认该文件没有被构建流程忽略、已正常上传到托管节点

内容的提问来源于stack exchange,提问作者Bryan C.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 02:45:02