我在部署到 Heroku 时遇到问题。
就在server.listen(process.env.PORT || 3000)
之前
console.log(process.env.PORT)
给了我3000
但是console.log(JSON.stringify(process.env))
给了我整个对象,其中 PORT 由 Heroku 正确设置(它每次都使用不同的端口)
我的钱用于将process.env.PORT
变量名称更改为 $ 3e3
之类的缩小过程,然后由于某种原因无法正确读取端口。
(当我将开发版本上传到 heroku 时,一切正常)
知道如何在生产中禁用服务器缩小吗?
好的,做了更多的研究,从 RAZZLE-README.md 中找到了这个
环境变量在构建时嵌入。 您可以在运行时读取它们,因为默认情况下我们使用
webpack.DefinePlugin
导出它们。
所以 process.env.PORT 是在构建时设置的。 这不适用于 Heroku,因为它需要自己设置。 我能在这里做什么?
解决了! :)
找到了这个小可爱: https ://www.npmjs.com/package/razzle-heroku
奇迹般有效! 🥇
而且我已经开始考虑放弃 razzle 并推出自己的..
对于任何来到这里的人来说,在即将推出的新的 razzle 中都可以选择。
最有用的评论
解决了! :)
找到了这个小可爱: https ://www.npmjs.com/package/razzle-heroku
奇迹般有效! 🥇
而且我已经开始考虑放弃 razzle 并推出自己的..