Next.js 独立版不读取 env 文件

Que*_*ein 6 javascript environment-variables next.js

我对我的 Next.js 项目有疑问。

我已将我的项目配置为通过独立模式构建以进行部署

experimental: {
    outputStandalone: true
}
Run Code Online (Sandbox Code Playgroud)

使用它,它会生成一个与server.js预期类似的独立文件夹。

主要问题是我在源中使用了一个环境变量,称为NEXT_PUBLIC_API_BASE_URL

当我以开发模式(使用)启动我的项目时next serve,它工作正常。

但是当我启动独立生成的文件(使用node server.js)时它不起作用。

看来该文件是在“服务器端”加载的,当我console.log在它的值中时,.next/standalone/server/pages/_app.js它在节点控制台中显示了正确的值。

但看起来接下来是使用下面的文件.next/static/chunks/pages/和另一个似乎无法访问 process.env (在浏览器端)的 app.js 。

我认为在我的环境变量中添加前缀NEXT_PUBLIC是为了以这种方式工作,但事实似乎并非如此。

知道它在那里如何运作吗?

小智 -8

在构建服务器上,创建文件名“.env”并放置所有环境。

NEXT_PUBLIC_API_BASE_URL=https://api.example.com
Run Code Online (Sandbox Code Playgroud)

请参考文档