错误页面在 Sapper 导出的生产环境中不起作用

Error page does not work in production for Sapper export

使用 dev 命令时,基本上不会捕获现有路由,并且会显示错误/404 页面。但是当使用 export 并将生成的文件上传到网络服务器时,这是行不通的。相反,会显示索引页面,但 none 逻辑有效,就像点击另一个 link 进行导航。

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

使用 sapper export 时,脚本将从您的索引页面开始,并访问(并呈现)页面上 link 可访问的所有页面。通过这种方式,您可以将网站的 static 版本上传到主机。它取代了服务器端渲染 sapper 通常所做的,但只是对于用户访问的第一个页面,其余所有将开始正常工作。

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

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

package.json

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

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