首页 > 解决方案 > 错误页面在 Sapper 导出的生产中不起作用

问题描述

使用该命令时基本上不会捕获现有路由dev并显示错误/ 404 页面。但是当使用export生成的文件并将其上传到网络服务器时,这不起作用。相反,会显示索引页面,但没有任何逻辑起作用,例如单击另一个链接进行导航。

我之前在代码中有一个 catch all slug,但删除并删除了该export命令生成的所有文件,以确保将其删除。这可能是问题吗?slugs 文件会是什么样子?

标签: javascriptstatic-filessapper

解决方案


使用sapper export该脚本时,将从您的索引页面开始并访问(并呈现)该页面上的链接可访问的所有页面。这样,您就可以将网站的静态版本上传到您的主机。它取代了服务器端渲染 sapper 通常所做的工作,但仅对于用户访问的第一页,其余所有将正常开始工作。

由于当用户去某个不存在的地方时会显示 404 页面,因此您(通常)那里没有链接,因此脚本不会呈现该页面。

为了告诉 sapper 也抓取该页面,您必须将其添加为入口点

package.json

"export": "sapper export --entry "/ /404""

这个额外的参数将告诉脚本从/(主索引文件)开始并再次执行整个过程,从/404开始(它不应该存在,因此会抛出你​​的错误页面)


推荐阅读