Для чего-то, что должно быть так просто, мне очень сложно установить путь, которым команды PHP exec()
используют под MAMP на Mac под управлением El Capitan.
Мне нужно решение для использования переменных окружения, а не (например) PHP putenv()
или жестко закодированного "PATH = foo &&", поскольку этот код будет использоваться на разных серверах, каждый из которых может использовать другой путь. Я отлично работал над Йосемити (хотя, честно говоря, я не помню, что в конечном итоге работал), но когда я добрался до Эль-Капитана, путь был сброшен.
Я пробовал следующее и перезапустил компьютер после каждого, чтобы убедиться, что был сброшен путь Apache:
/etc/paths
и /etc/paths.d
export PATH=$PATH: /opt/local/bin
в MAMP/Library/bin/_envvars
/System/Library/LaunchDaemons/org.apache.httpd.plist
после отключения SIP, чтобы сделать это возможным.После каждого из них путь (как указано командой exec ('echo $ PATH', $ output); "в PHP) остается неизменным:
\/usr\/bin:\/bin:\/usr\/sbin:\/sbin
Я нахожусь в конце. Если кому-то удастся установить путь на аналогичной настройке, я хотел бы получить информацию о том, как это было сделано.
Благодарю!
На Mavericks он работал следующим образом:
- Остановить MAMP
- Переименуйте файл /Applications/MAMP/Library/bin/envvars_
в /Applications/MAMP/Library/bin/envvars
(без подчеркивания).
- Добавьте эти две строки в конец переименованного файла:
PATH="$PATH:/additional/path1:/additional/path2"
export $PATH
- Запустите MAMP и посмотрите на phpinfo()