起因
故事的开始是Google Play推送的消息:“有 1 个深层链接可能因您的网站域名未与应用关联而失败”,“这意味着,在 Android 12 及更高版本中,您的应用无法接受来自某些网址的流量。如需解决问题并确保用户能直接进入您的应用,请前往“深层链接”页面。”
结论
在宝塔面板打开站点修改窗口,选择配置文件:
1. 修改ContentType的响应
方法1:增加站点JSON文件响应
types {
application/json json;
}
方法2:精确控制深层链接
验证文件
location ~ \assetlinks.json {
default_type application/json;
}
2. 临时注释宝塔的SSL续签配置【重要】
找到下面这四句
#CERT-APPLY-CHECK--START
# 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
include /www/server/panel/vhost/nginx/well-known/你的站点.com.conf;
#CERT-APPLY-CHECK--END
讲第三句include临时注释掉,去Google Play后台重新验证即可
原理
查看上面注释掉第三句的文件第19行:
ngx.header['content-type'] = 'text/plain'
会发现,宝塔回了让SSL正常响应,强制奖content-type改为了text.plain,这就是为什么只做上面第一步没有作用的原因,因为可以临时验证,所以注释掉就可以了,记得验证过了深层链接后,重新打开这句话!