为什么死链接会重定向到部署在 AWS Amplify 上的 Astro 网站的主页?

问题描述 投票:0回答:1

我有一个静态 Astro 网站部署到 AWS Amplify 进行托管。我最初错过了一个死链接,因为它链接到主页而不是专用的

404.astro
页面。

如何让我的 404 页面显示无效/无效 URL,而不是主页?

aws-amplify astrojs
1个回答
0
投票

默认情况下,AWS Amplify 在您的应用程序中设置重定向到根

/index.html
页面的重定向规则。这样做是因为单页应用程序 (SPA) 通常有一个托管前端框架的根
index.html
文件。重定向对于允许深层链接到 SPA 是必要的,SPA 具有自己的内部路由。

由于 Astro 是一个静态站点生成器 (SSG),它会创建一个目录结构,并在每个目录中放置一个单独的

index.html
。它还生成一个专用的
404.html

这意味着我们需要调整重定向规则:

  • 打开 AWS 控制台
  • 打开 AWS Amplify 服务
  • 打开您的 Amplify 应用程序
  • 单击“应用程序设置”侧栏中的
    Rewrites and redirects

从此更改重写规则

Source Address   Target address   Type
/<*>             /index.thml      404 (rewrite)

对此

Source Address   Target address   Type
/<*>             /404.thml        404 (rewrite)
© www.soinside.com 2019 - 2024. All rights reserved.