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

iOS应用关联域Site/Fmwk Approval被拒问题求助

iOS关联域(applinks)失效排查方案

一、先检查apple-app-site-association文件本身

  • JSON格式校验:添加新App ID后极易出现语法错误,比如多打/漏打逗号、引号不闭合。用JSON校验工具(本地或在线均可)检查文件是否合法。
  • App ID格式正确性:每个App ID必须严格遵循团队ID.应用Bundle ID的格式,比如XYZ1234567.com.yourcompany.yourapp,团队ID要和苹果开发者后台里的一致,不能写错。
  • 数组结构规范:applinks下的apps数组必须保留空数组[],details数组里要正确包含新旧App ID的配置,示例格式如下:
{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "旧团队ID.旧BundleID",
        "paths": ["/*"]
      },
      {
        "appID": "新团队ID.新BundleID",
        "paths": ["/*"]
      }
    ]
  }
}
  • paths规则检查:如果新增App ID的paths有特殊规则(比如排除某路径),要确保格式正确,比如NOT /private/*这种写法不能出错,通配符*的使用也要符合苹果规范。

二、排查Nginx服务器配置

  • 目录访问权限:确保Nginx允许访问.well-known目录,配置示例:
location /.well-known/ {
    allow all;
    try_files $uri $uri/ =404;
}
  • Content-Type响应头:苹果要求该文件的Content-Type必须是application/json,不能是text/plain。用以下命令测试:
curl -I https://My-Website.com/.well-known/apple-app-site-association

查看返回结果里的Content-Type字段是否为application/json,如果不是,在Nginx里添加对应配置:

location = /.well-known/apple-app-site-association {
    add_header Content-Type application/json;
}
  • HTTPS有效性:苹果强制要求关联域文件通过HTTPS访问,检查你的SSL证书是否有效、未过期,且配置正确。
  • 缓存策略:避免Nginx设置过长的缓存时间,导致苹果服务器获取的是旧配置。可以添加缓存控制头:
location = /.well-known/apple-app-site-association {
    add_header Cache-Control "max-age=3600";
}
  • 文件可访问性:用curl直接下载文件,检查返回内容是否和本地编辑的完全一致,排除Nginx返回404或错误内容的情况。

三、深挖Sysdiagnose日志

日志里的Site/Fmwk Approval被拒通常会附带更具体的原因,比如JSON解析失败、App ID不匹配、证书不信任等,仔细查看日志里的详细错误提示,能快速定位问题。

四、验证苹果服务器的获取情况

可以用curl模拟苹果服务器的请求,或者通过苹果开发者后台的关联域验证功能,确认苹果能正确获取并解析你的配置文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 14:37:34