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

部署在Amplify的Vue Router应用无法直接访问指定文件求助

解决Amplify部署Vue应用后无法访问Apple商户ID验证文件的问题

问题根源

你之前的做法存在两个核心错误:

  1. 前端路由无法处理静态文件请求:Vue Router的路由是前端逻辑,而Apple验证需要服务器直接返回apple-developer-merchantid-domain-association文件的纯文本内容,不是通过前端组件跳转。
  2. 本地文件路径无效:组件里的window.open('file:///.well-known/...')是本地环境的路径,部署到Amplify的云服务器后完全不存在,自然无法生效。

正确解决方案

1. 放置验证文件到正确目录

将apple-developer-merchantid-domain-association文件放到Vue项目的public/.well-known/目录下(如果.well-known目录不存在就新建)。

  • 这个目录下的文件在Vue构建时会被直接复制到dist根目录,Amplify会把它当作静态资源处理。

2. 配置Amplify的重定向规则

因为你用了Vue Router的history模式,Amplify默认会把所有请求重定向到index.html,所以需要调整规则让.well-known路径的请求优先访问静态文件:
在Amplify控制台的Rewrites and redirects页面:

  • 先添加一条优先级最高的规则:
    • Source address: /.well-known/*
    • Target address: /.well-known/*
    • Type: 200 (Rewrite)
  • 保留原有的SPA重定向规则(通常是第二条):
    • Source address: </^[^.]+$|\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^.]+$)/>
    • Target address: /index.html
    • Type: 200 (Rewrite)

3. 移除无效的路由和组件

删除你之前在router/index.js中添加的/.well-known/apple-app-site-association路由,以及对应的AppleVerification.vue组件——这些完全没必要,反而会干扰静态文件的访问。

验证方法

部署完成后,直接访问https://你的Amplify域名/.well-known/apple-developer-merchantid-domain-association,应该能看到文件的纯文本内容,此时就能通过Stripe的Apple商户ID验证了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 23:55:37