我有一个静态 Astro 网站部署到 AWS Amplify 进行托管。我最初错过了一个死链接,因为它链接到主页而不是专用的
404.astro
页面。
如何让我的 404 页面显示无效/无效 URL,而不是主页?
默认情况下,AWS Amplify 在您的应用程序中设置重定向到根
/index.html
页面的重定向规则。这样做是因为单页应用程序 (SPA) 通常有一个托管前端框架的根 index.html
文件。重定向对于允许深层链接到 SPA 是必要的,SPA 具有自己的内部路由。
由于 Astro 是一个静态站点生成器 (SSG),它会创建一个目录结构,并在每个目录中放置一个单独的
index.html
。它还生成一个专用的 404.html
。
这意味着我们需要调整重定向规则:
Rewrites and redirects
从此更改重写规则
Source Address Target address Type
/<*> /index.thml 404 (rewrite)
对此
Source Address Target address Type
/<*> /404.thml 404 (rewrite)