set/assign 系统环境变量在哪里(即哪个文件),例如,nginx 在 FreeBSD 上可以像 NODE_ENV 一样读取?
Where (i.e. which file) to set/assign systemwide environment variable which e.g., nginx can read like NODE_ENV on FreeBSD?
在 FreeBSD 上,我需要在启动时设置 NODE_ENV=production
和其他系统范围的环境变量,在 nginx 启动之前。
哪个是正确的地方,即我这样做的文件?
一种选择是将您的环境变量添加到 setenv
功能中的 /etc/login.conf
,例如:
default:\
:passwd_format=sha512:\
:copyright=/etc/COPYRIGHT:\
:welcome=/etc/motd:\
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,NODE_ENV=production:\
...
来自 login.conf 人:
setenv list A comma-separated list of
environment variables and
values to which they are to
be set.
如果您修改 /etc/login.conf
文件,请不要忘记 运行:
cap_mkdb /etc/login.conf
此外,如果您想为 rc(8) service then you might also take a look at the ${name}_env
and ${name}_env_file
variables described in rc.subr(8). They allow you to set environment variables for services on FreeBSD in rc.conf(5) 设置一些环境变量,例如:
nginx_enable="YES"
nginx_env="NODE_ENV=production"
在 FreeBSD 上,我需要在启动时设置 NODE_ENV=production
和其他系统范围的环境变量,在 nginx 启动之前。
哪个是正确的地方,即我这样做的文件?
一种选择是将您的环境变量添加到 setenv
功能中的 /etc/login.conf
,例如:
default:\
:passwd_format=sha512:\
:copyright=/etc/COPYRIGHT:\
:welcome=/etc/motd:\
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,NODE_ENV=production:\
...
来自 login.conf 人:
setenv list A comma-separated list of environment variables and values to which they are to be set.
如果您修改 /etc/login.conf
文件,请不要忘记 运行:
cap_mkdb /etc/login.conf
此外,如果您想为 rc(8) service then you might also take a look at the ${name}_env
and ${name}_env_file
variables described in rc.subr(8). They allow you to set environment variables for services on FreeBSD in rc.conf(5) 设置一些环境变量,例如:
nginx_enable="YES"
nginx_env="NODE_ENV=production"