我在S3有一个SPA应用程序。EC2中的Api
我的cloudfront逻辑如下:
- /- api-origin
- /front/* - s3 bucket-origin
前面有它的方式,例如
- example.com/front/User/Login
- example.com/front/Documents/
- example.com/front/UserSetting/
我设法通过s3桶托管代理启动应用程序。但是我想尝试在不启用s3主机的情况下实现它。
What did I try:
增加了cloudfront功能。
function handler(event) {
var request = event.request;
request.uri = request.uri.replace(/^/[^/]*//, "/");
request.uri += '/front/index.html';
return request;
}
但是我得到404
请告诉我如何正确地实现这个。最好没有Lambda(只有cloudfront函数)
为自己找到了解决办法。我不知道这是否正确,但它确实有效。
function handler(event) {
var request = event.request;
request.uri = request.uri.replace(/^/[^/]*//, "/");
if (!request.uri.includes('.')) {
request.uri = "/index.html";
}
return request;
}
我希望云前端功能不要花费很多钱