サーバの環境変数で開発環境とか本番環境を区別する

CentOS6でサーバを構築する際におこなっている基本設定
http://kohkimakimoto.hatenablog.com/entry/2016/03/22/190145

環境変数はサーバにデプロイするアプリケーションの振る舞いを制御するためなどに使います。 サーバのロールやdevelopmentやproductionのような環境情報を設定しておきます。 アプリケーションは実行時にこの環境変数を読むことでデバッグモードに変えたり、本番用の設定に切り替えたりできるように実装します。

ただ環境変数はsudo時、sshでログイン時、sshで直接コマンド実行時、実行中のhttpdプロセス内、などプロセスの実行のコンテキストによって変わるので、 常に一貫した設定を読めるようにしておくのがなかなか難しく、悩みどころになっています。現状は同じ環境変数を反映させる設定を複数の箇所に行っています。