【发布时间】:2014-03-16 22:02:07
【问题描述】:
我正在运行一个以 Heroku 作为主要部署目标的 Node 项目。在开发环境中,我使用 grunt 启动 Web 服务器,但在生产环境中,我更喜欢直接使用 node app 启动应用程序
这是我的 Procfile:
web: bin/web
还有 bin/web:
#!/bin/sh
echo "NODE_ENV=" $NODE_ENV
if [ "$NODE_ENV" == "production" ]; then
echo "Starting the server with node app"
node app
else
echo "Starting the server using grunt"
grunt
fi
第一个echo 用于调试。 heroku 日志显示:
app[web.1]: NODE_ENV=
基本上,没有设置 NODE_ENV 的意思。 (并且应用以 grunt 而不是 node app 开头)
docs 表示“NODE_ENV 环境变量默认为生产环境,但您可以根据需要覆盖它”
我错过了什么?
【问题讨论】: