我正在开发一个 Next.js 项目,我需要动态生成 Open Graph 图像。我的实现可以在本地运行,但在 Vercel 和 Netlify 上部署到生产环境时遇到问题。
当地环境:
Vercel 部署:
Netlify 部署:
localhost
而不是生产 URL。问题:
localhost
,如何更正它以使用生产 URL?任何解决这些问题的见解或建议将不胜感激!
参考:我按照 Vercel 文档 进行此实现。
关于:
您应该能够在
metadataBaseUrl
对象中使用 metadata
。您可以通过这种方式使用它,例如 Vercel 部署:
metadataBase: process.env.VERCEL_URL
? new URL(`https://${process.env.VERCEL_URL}`)
: new URL(`http://localhost:${process.env.PORT || 3000}`),
同样适用于不同的环境变量或部署服务。
现在,关于:
我的情况也完全一样。我也在github中发现了这个问题:https://github.com/vercel/next.js/discussions/50546#discussioncomment-8052317