我有以下情况,我需要如何继续的帮助:
我在私有 S3 存储桶中有一个多页面网站。它使用 OAI 允许 CloudFront 发行版在
example.com
分发此网站。
我有一个单页应用程序托管在另一个私有 S3 存储桶中。它使用 OAI 允许相同的 CloudFront 发行版在
example.com/app
上分发网站。 CloudFront 发行版包含一个“附加行为”,它将请求定向到应用程序的 S3 存储桶的路径 /app*
。
404.html
。这很简单;我可以指定发行版使用此文件路径的错误响应。问题是,第二个源(在
example.com/app
提供服务的 SPA)需要在 404 上返回其
index.html
文档,因为它是 SPA。我无法在 CloudFront 中针对每个源指定错误处理。我有两个已知的解决此问题的方法:
/app*
的 URI 的错误处理行为。
function handler(event) {
var request = event.request;
request.uri = '/index.html';
return request;
}