0

我想在 firebase 托管上发布我的网站。
我在 Next.js 中使用静态生成来创建一个页面。
但是,有些页面我想做动态路由,比如博客。

URL 看起来像这样“blog/[slug]”
如果在首页以外的页面上重新加载,它将是 404,所以使用 next.config。
“尾随斜线:真”已设置。

当使用 SG 执行动态路由时,页面会导出一个文件,例如“blog/[slug]/index.html”。

通常,它适用于从顶部屏幕转换,但如果您使用该 URL 重新加载,它将是 404。

解决此问题的一种方法是检测博客是否已更新并使用 WebHook 等重新构建并部署它。

网站上有各种方法可以做到,但是由于更新频率很高,每次都很难构建。

接下来,我正在考虑仅针对 SG 站点中的博客部分进行 CSR(客户端渲染)。
你不能使用常规的 React 路由器进行路由吗?关于它。
我尝试仅将 React Router 用于某些页面,但由于 React Router 不是服务器端进程,因此出现错误。

我想做的第二件事可行吗?

如果您对此问题有任何其他解决方案,请告诉我。

PS:由于冷启动问题,无法使用 Firebase 功能...

最良好的问候。

4

1 回答 1

0

看来只要输入rewrite设置就解决了。感谢所有看到问题的人。

"rewrites": [
{
    "source": "/notice/**",
    "destination": "/notice/[slug]/index.html"
}
于 2022-02-02T23:47:42.007 回答