Я установил в свой файл custom.conf в apache2:
SetEnv PATH $PATH:/opt/local/lib/mysql5/bin:/this-is-a-test
Однако он не работает. Когда я звоню:
$hey = shell_exec('env'." 2>&1"); var_dump($hey);
Я получил:
... PATH=/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin
Может ли кто-нибудь помочь? Я нахожусь на Mac, используя Macports для своей среды разработки. Благодаря!
Мне кажется странным, что вы пытаетесь установить PATH из Apache. Вместо этого вы должны установить PATH для своей системы. Существует несколько способов сделать это в Mac OS X:
Пользователь конкретных
Для одного пользователя вы можете редактировать файл ~ / .profile и добавлять:
export PATH="$PATH":/opt/local/lib/mysql5/bin:/this-is-a-test
Или вы можете создавать / редактировать ~ / .MacOSX / environment.plist и определять PATH таким образом.
Общесистемную
В более новых версиях Mac OS X есть файл с именем «/ etc / paths», и есть папка с именем «/etc/paths.d», которая позволяет расширять пути по умолчанию. В принципе, вы должны создать файл в «/etc/paths.d», в котором перечислены все пути, которые вы хотите добавить к путям по умолчанию. В версиях Mac OS X, которые не поддерживают это (вы можете определить, существует ли «/ usr / libexec / path_helper»), можно редактировать пути по умолчанию для всех пользователей, поместив инструкцию экспорта в / etc / profile.
для сервера ubuntu, в / etc / apache2 / envvars, для сервера centos, в файле / etc / sysconfig / httpd, чтобы добавить:
export PATH=<your php cli path>
и перезапустите apache
Этот вопрос старый, но в случае, если он помогает другим, если вы используете Windows с mod_fcgid
проверьте, есть ли у вас FcgidInitialEnv
в вашем httpd.conf
и удалите его, чтобы принять Системный PATH.