Установка серверных переменных перед загрузкой 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

(может работать без явного экспорта).

Другие вопросы по тегам