在 /etc/apache2/envvars 中创建多个变量?

在 /etc/apache2/envvars 中创建多个变量?

我开始问这个问题在 /etc/apache2/envvars 中创建新变量?。我试图通过声明一些特定于服务器的变量/etc/apache2/envvars然后在我的中使用它们来使我的 Apache 配置变得 DRY httpd.conf,但是在让 Apache 识别新变量时遇到了问题。

正如 @ouranos 发现的那样,我可以用来PassEnv声明新变量..但只能声明一个新变量:RAILS_ENV。请观看:

/etc/apache2/环境变量

export RAILS_ENV=production
export OUR_HOST_NAME='web.production.example.com'

/etc/apache2/sites-enabled/示例

PassEnv OUR_HOST_NAME RAILS_ENV
ErrorLog ${APACHE_LOG_DIR}/${OUR_HOST_NAME}-error.log
CustomLog ${APACHE_LOG_DIR}/${RAILS_ENV}-access.log combined

ls -1 /var/log/apache2*-*:

${OUR_HOST_NAME}-error.log
production-access.log

什么?交换两个变量的顺序PassEnv也没有任何效果。

答案1

正如所说其他问题您可能必须apache2ctl stop && apache2ctl start这样做apache2ctl restart,因为似乎没有读取envvars文件中的更改。

相关内容