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

Angular项目部署GAE后无法下载apple-app-site-association文件

解决GAE部署后apple-app-site-association无法访问的问题

问题根源

当前app.yml的最后一个handler规则url: /(.*)会匹配所有请求并返回index.html,导致.well-known/apple-app-site-association的请求被转给Angular路由处理,而Angular没有对应路由,因此报错。此外,原skip_files规则会跳过所有以.开头的目录/文件,导致.well-known目录无法被上传到GAE;同时Angular默认不会将src/.well-known打包到dist目录。

解决步骤

1. 配置Angular打包时包含.well-known目录

打开angular.json,找到对应项目的build配置下的assets数组,添加"src/.well-known":

"assets": [
  "src/favicon.ico",
  "src/assets",
  "src/.well-known"
]

执行ng build时,src/.well-known目录会被复制到dist/listdropper/.well-known下。

2. 修改app.yml添加专属handler规则

在handlers数组最顶部添加匹配.well-known路径的规则(GAE按顺序匹配handler,需放在最前面避免被后续规则覆盖):

handlers:
  # 新增:匹配.well-known下的所有文件
  - url: /.well-known/(.*)
    secure: always
    redirect_http_response_code: 301
    static_files: dist/listdropper/.well-known/\1
    upload: dist/listdropper/.well-known/(.*)
    http_headers:
      Strict-Transport-Security: max-age=31536000; includeSubDomains

  # 原有静态资源规则
  - url: /(.*\.(gif|png|jpg|ico|css|js)(|\.map))$
    secure: always
    redirect_http_response_code: 301
    static_files: dist/listdropper/\1
    upload: dist/listdropper/(.*)(|\.map)
    http_headers:
      Strict-Transport-Security: max-age=31536000; includeSubDomains

  # 原有SPA fallback规则
  - url: /(.*)
    secure: always
    redirect_http_response_code: 301
    static_files: dist/listdropper/index.html
    upload: dist/listdropper/index.html
    http_headers:
      Strict-Transport-Security: max-age=31536000; includeSubDomains

3. 修改skip_files规则,允许.well-known目录上传

原skip_files中的^(.*/)?\..*$会跳过所有以.开头的目录/文件,需要修改为排除.well-known:

skip_files:
  - e2e/
  - node_modules/
  - src/
  - coverage
  # 修改规则:跳过除.well-known外的隐藏目录/文件
  - ^(.*/)?\.(?!well-known).*$
  - ^(.*/)?.*\.json$
  - ^(.*/)?.*\.md$
  - ^(.*/)?.*\.yaml$
  - ^LICENSE

4. 重新打包并部署

执行以下命令重新打包并部署到GAE:

ng build --prod
gcloud app deploy

完成以上步骤后,即可正常访问https://www.urlofmysite.com/.well-known/apple-app-site-association。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 23:35:40