用于多个SPA的S3和CloudFront网站托管通过URL路径重定向到不同的index.html

Vasyl Sarzhynskyi

我有一个用于多个“单页应用程序”的S3存储桶,并为此存储桶启用了静态网站托管。存储桶具有以下文件夹和文件(firstApp和secondApp是文件夹,对应于不同的SPA):

firstApp
    index.html
    *.js & *.css files
secondApp
    index.html
    *.js & *.css files

我还在S3存储桶的前面设置了CloudFront,默认的根对象设置为index.html现在cloud-front-url/firstApp/显示器index.html从firstApp SPA和cloud-front-url/secondApp显示index.html来自secondApp。

我需要index.html根据URL路径将所有不正确的请求重定向到针对特定应用程序的不同请求,例如,如果有人请求cloud-front-url/firstApp/non-existing-path,则应将其index.html从firstApp重定向至对第二应用程序的类似行为。

我知道如何设置CloudFront将所有404错误重定向到一个index.html

select distribution > Error Pages > Create custom error response:
* Http error code: 404
* Error Caching Minimum TTL (seconds) : 0
* Customize response: Yes
* Response Page Path : /firstApp/index.html
* HTTP Response Code: 200

CloudFront是否可以index.html根据请求的路径将404错误重定向到其他错误(重定向到index.htmlfirstApp或secondApp文件夹中)?

马特·豪瑟

在S3上托管静态网站时,不可能有不同的404页面。一般来说,一个存储桶有一个404错误页面。

您可以将两个应用程序托管在两个单独的存储桶中。每个人都有自己的404错误页面。

然后,在CloudFront中,使用指向每个单独存储桶的多个行为。这样,/firstApp/转到bucket1,然后/secondApp/转到bucket2。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

S3静态托管-不含index.html的路径

将域的所有 url 重定向到 index.html 以用于应用引擎 flex env 部署的网站

从 S3 和 CloudFront 上的 URL 反应应用程序中删除 index.html

将所有AWS S3 http请求重定向到AngularJS HTML5Mode的index.html

Spring Boot将所有URL重定向到index.html(SPA)

将用于pushstate支持的URL重定向到.html URL

多个下拉菜单重定向到URL(HTML)

将/和index.html重定向到新的新URL

为S3上的所有404请求返回index.html,而不是重定向

您如何使带有Cloudfront的S3上托管的静态站点的index.html缓存无效?

301通过htaccess将index.html以及所有http,https,www和非www版本的首页URL重定向到https:// www根URL

如何从 s3.getObject 呈现 index.html,它获取了 S3 上托管的网站?

从Pretty URL重定向到.html URL

从index.html重定向到/

将服务器请求重定向到/index.html以进行React / Angular SPA

使用S3,CloudFront和Origin Path的静态网站托管的子文件夹重定向问题

为什么由Amazon S3托管的网站使我下载除index.html之外的所有页面

Javascript Puppeteer - 页面重定向到 ASP.net SPA 网站中的新页面后无法获取 html 内容

Laravel从index.php和index.html重定向到域

“重定向到HTML页面”

HTML重定向到错误

通过路线53的S3静态网站。如果路径不存在,则重定向到页面

Django URLs 文件将不同的 URL 重定向到错误的 html 文件

从一个index.html页面重定向到2个URL

CloudFront整个网站交付和html中包含的URL

带有多个斜杠的网站 URL 路径的文件结构到 html 文件

使用JavaScript重定向到相同/不同的html页面

非www到www。重定向并将index.html重定向到index.php

在NancyFX中将/重定向到/index.html