Użytkownik PHP MAMP nie znajduje / usr / local / bin

1

Mam stronę internetową na współużytkowanym hostingu Linux, który używa Ghostscript. Używam funkcji php exec, która wykonuje funkcje wiersza poleceń, poleceń gs do renderowania plików PDF, prostych poleceń gs.

gs -h (will display info)

Jednak w moim serwerze internetowym Mac OS X MAMP polecenia gs są wykonywane tylko przez pełne ścieżki.

/usr/local/bin/gs -h (will display info)

Jak skonfigurować system lokalny, aby użytkownik „php” znalazł gs (i inne biblioteki) bez pełnej ścieżki?

EDYCJA: Wiersz poleceń terminalu również nie potrzebuje pełnej ścieżki. Problem występuje tylko przy próbie uruchomienia gs przy pomocy funkcji exec PHP.

Gustavo
źródło
Może przydatne Jak ustawić $ PATH w PHP?
klanomath

Odpowiedzi:

1

Jest to najprawdopodobniej problem z domyślną ścieżką wyszukiwania w systemie MacOS X, która nie zawiera tego katalogu. Wpływa to również na Homebrew, dlatego wymieniają obejście na swojej stronie FAQ :

launchctl setenv PATH "/usr/local/bin:$PATH"

Ten wpis FAQ również zawiera odniesienia do https://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x/5444960, aby uzyskać więcej informacji na temat ustawiania środowiska w OS X.

jstarek
źródło
Ok, ale po uruchomieniu komendy gs przez Terminal gs zostaje znaleziony, problem występuje podczas korzystania z funkcji php exec. Setenv wyznaczy ścieżkę dla wszystkich użytkowników?
Gustavo,