Установка серверных переменных перед загрузкой Apache
У нас есть CentOS с Apache на нем. По сути, у меня есть несколько переменных в / etc / environment, и они передаются нашим конфигам Apache с помощью PassEnv. Проблема в том, что поскольку Apache находится до / etc / environment, переменные не найдены.
Существует ли файл / etc / environment аналогичного типа, в который я могу добавить свои глобальные переменные среды, которые выполняются до apache (httpd), или мне нужно начинать редактировать уровни запуска?
С уважением,
Стив
2 ответа
Используйте "/etc/sysconfig/httpd" для настройки среды Apache.
Если это переменные, которые применяются к каждому пользователю в системе, их следует добавить в /etc/enviornment - но IIRC этот файл явно не анализируется сценариями инициализации.
Поэтому вам нужно добавить строку в /etc/rc.d/init.d/functions, например
# -*-Shell-script-*-
#
# functions This file contains functions to be used by most or all
# shell scripts in the /etc/init.d directory.
#
# amended to set env vars
TEXTDOMAIN=initscripts
. /etc/environment
Однако если вы хотите, чтобы эти переменные были доступны только веб-серверу, они должны быть объявлены в / etc / sysconfig / httpd, например
# Configuration file for the httpd service.
export MYSQL_USER = mydbuser
(может работать без явного экспорта).