Это CentOS 5. Я создал /etc/profile.d/java.sh
файл, в который я установил и экспортирую JAVA_HOME
. В терминале все работает нормально.
Когда я пытаюсь получить эту переменную среды из PHP под Apache, я получаю следующее после использования shell_exec("env")
:
TERM=xterm-color
_=/bin/env
PWD=/home/...
LANG=C
SHLVL=3
Даже признак JAVA_HOME
. Где я должен объявить это, чтобы сделать его видимым для apache?
Вы можете сделать это, экспортировав переменные в /etc/sysconfig/httpd
а затем с помощью PassEnv
директива, чтобы сделать их доступными для Apache, например
В / etc / sysconfig / httpd
export JAVA_HOME=/path/to/java_home
В /etc/httpd/conf.d/envvars.conf
(например)
PassEnv JAVA_HOME
Затем перезапустите службу httpd.