2016-01-15 4 views
0

Я читал об dangers of not having NODE_ENV properly set in Express. В моем приложении OpenShift я могу отобразить NODE_ENV через простой экспресс-маршрут и оператор console.log, но я не могу его увидеть нигде, например. с командой env на платформе SSH. Как/где он установлен?Как установить NODE_ENV в OpenShift?

ответ

3

В шахте (и это отличается от того, что вы могли бы find in the documentation), оно установлено в файле nodejs/configuration/node.env в передаче. Чтобы достичь этого, вы можете использовать инструменты облачной консоли - rhc ssh -a your-app-name. В этом файле вы должны увидеть что-то вроде

#This file specifies the environment to setup prior to running Node. 
... 
# Default script name used is server.js 
export node_app=server.js 
#Any arguments to pass to the application or script. 
export node_app_args="" 

#Any command line options to pass to Node. 
#E.g. export node_opts="--stack-size=2048 --trace_gc" 

export node_opts="" 
... 
#Node production mode turned on by default 
export NODE_ENV=${NODE_ENV:-"production"} 

... который также позволяет вам настроить другие параметры конфигурации. Надеюсь, что это поможет, это заняло немного времени, когда я впервые должен был это сделать.

+0

Как вы нашли? – KnewB

+1

Пришлось для grep для этого - _grep -r NODE_ENV ./_ – Math