微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NextJS 基本路径路由 - 在不使用基本路径的情况下是否在链接前加上文件夹名称?

如何解决NextJS 基本路径路由 - 在不使用基本路径的情况下是否在链接前加上文件夹名称?

我知道如果您不想在根域级别托管应用程序,您可以使用 NextJS 的 basepath 功能将您的 NextJS 应用程序托管在您域的特定目录中。

我们正在尝试在 https://oursite.com/app 之类的地方托管我们的应用程序。根域 (https://oursite.com) 是一个营销网站,它构建在一个完全不同的框架上,并运行在一个完全不同的 Docker 实例上。我们的网络团队已将所有流向 https://oursite.com/app 的流量转发到我们的 NextJS K8 pod / Docker 实例。

只要我们直接在浏览器中输入 URL,这就会起作用 - 即。通过在 URL 栏中输入这些 URL 转到 https://oursite.com/app/abouthttps://oursite.com/app/contact。但是无论何时您点击我们应用程序中的任何链接重定向 URL 都是不正确的。

在我的本地开发环境中,单击链接会正确地将我定向到诸如 http://localhost:3000/about 之类的内容。但是点击我们实际环境中的链接会将我带到https://oursite.com/about。我应该到https://oursite.com/**apP**/about

这是可以使用 NextJS 的 basepath 功能的地方。如果我将 basepath 变量设置为相同的值,则嵌入到我的任何页面中的任何链接都会自动附加 /app。不幸的是,这对我们不起作用,因为我们的网络路由会将所有流向 https://oursite.com/app 文件夹的流量定向到独立的 K8 pod/Docker 实例。

当我将基本路径设置为 /app 时,我在访问 https://oursite.com/app 时收到 404 错误。我假设这是因为 NextJS 无法了解自己正在运行的 K8 pod 之外的环境。它不在 https://oursite.com 上运行,也不知道流向 https://oursite.com/app 的流量确实被定向到其根域。

在这种情况下,如何在不使用基本路径功能的情况下让 NextJS 在所有页面重定向添加 /app

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。