我这样做的方式是在 AWS Amplify 上,因为我没有使用云端,所以资产被放在由 CDN 托管的不同服务器上。
- 确保您的主机和目标 CDN 使用相同的协议 (http/https),因为请求使用的是 xhr
- 如果您希望确保更快的加载时间,您也可以使用 preloadjs 预加载资产,并将资产列表放入 JSON 文件中。
- 使用 .htaccess(位于您的根文件夹中)或放大规则。
.htaccess
RewriteEngine ON
RewriteRule ^assets/(.*)$ https://b.com/static/assets/$1 [R=301,L]
而我的 AWS Amplify 规则是:
[
{
"source": "/assets/<*>",
"target": "https://b.com/static/assets/<*>",
"status": "301",
"condition": null
}
]
你可以通过https://htaccess.madewithlove.be/测试htaccess规则
这可能因服务器而异(apache、nginx、AWS amplify),但它们搜索的关键字将是“将文件夹重定向到另一个域”或类似的东西。
您不能将Image.assets 指向外部链接,因为这会破坏移动应用程序,除非您创建自己的方法然后将其分解为单独的网络 > image.network & 移动 > image.assets。
如果您无权访问服务器,就会出现这种情况。