将静态 Next.js 应用程序部署到 Firebase 托管

Deploying static Next.js app to Firebase Hosting

我已经通过 运行 next build && next export 将 Next.js 应用程序部署到 Firebase 托管,然后部署 out 文件夹中的内容...但是,当我去对于我的网络应用程序,它只加载索引页面。即使我转到不存在的 URL,例如:https://mywebsite.web.app/url-that-does-not-exist,它也会显示我在 index.js 中的内容,而不是 404 页面。在我的本地机器上,一切都按预期工作。

我还需要做什么才能显示 404 页面吗?

编辑:此外,当我使用 firebase serve 提供 out 文件夹时,它似乎不起作用!

听起来您还没有设置 Firebase Hosting and Cloud Functions or Cloud Run 之间的集成。否则,Firebase 托管仅提供静态文件 - 因此您的 JavaScript 永远不会在服务器上进行解释。

问题是在您 firebase init 之后生成的 firebase.json 文件中,我使用了 SPA 的配置。这意味着我将所有内容都重定向到 index.html,所以显然每个 URL 都映射到了这个文件。