我在由CloudFront部署的S3存储桶中托管我的Angular页面。
只要我不打开特定的路线,一切都是有效的。
- www.mydomain.com works
- www.mydomain.com/export不起作用。我有一个错误:指定密钥不存在于S3
路由在我的机器上工作(Localhost/Export没问题)。我该如何告诉S3/导出不是文件,而应由我的角路由器处理?
www.mydomain.com/export路由在云方面不存在,因为它只是前端路线。我认为返回的错误将是404错误,因为CloudFront会告诉您在www.mydomain.com/export中没有静态资产。
您只需要配置CloudFront即可通过服务index.html页面来响应所有404个错误。
您可以通过配置自定义错误响应来做到这一点(请参阅以下链接的详细信息):
http://docs.aws.amazon.com/amazoncloudfront/latest/developerguide/custom-eror-pages.html
设置应为:
- HTTP错误代码:404
- 自定义错误响应:是
- 响应页面路径:/index.html
- HTTP响应代码:200