Назад | Перейти на главную страницу

Доступ Apache к переменным системной среды (для расположения файла журнала)

Есть ли способ разрешить Apache доступ к система переменные среды? Я знаю, что у него есть собственная среда и он может передавать их порожденным процессам, таким как PHP, но есть ли способ разрешить самому серверу доступ к системным переменным?

В этом конкретном случае я хочу настроить Apache так, чтобы файлы журнала помещались в папку, на которую указывает переменная среды (давайте использовать TEMP как простой пример). К сожалению, я не могу найти ничего полезного, потому что это несколько необычная задача. Использование следующего не сработает:

CustomLog "%{TEMP}e/access.log" common

В страница руководства говорит об использовании ОС для изменения системных переменных, но ничего не говорит о доступ их.

Есть ли у Apache способ доступа к системным переменным? Есть ли способ поместить файлы журнала в переменное место? (Я готов обновить Apache, если необходимо.)

Вы можете заменить системную переменную окружения в конфиг:

CustomLog "${ENVVAR}/access.log" common

Но если эта переменная среды не установлена, текст остается в покое (что приведет к недопустимому синтаксису). Видеть Вот.

Лучшим вариантом, вероятно, будет включение файла (Include /path/to/logging.conf) с конфигурацией ведения журнала и при необходимости измените ее.