Wie kann ich in Linux (Bullseye) auf einem Raspberry PI (Apache und PH8 ist schon installiert) shell_exec() aktivieren?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Vielleicht ist shell_exec noch auf der disable_functions=... Liste im php.ini.

Vielleicht musst Du den memory_limit Parameter im php.ini erhöhen, da je nachdem was Du aufrufen willst, einiges an Speicher benötigt wird.

Je nach User, unter welchem php tatsächlich läuft, kann es auch sein, dass der User einfach keine Permissions hat, einen bestimmten Befehl via Shell zu starten, z.B. dann wenn das zu startende Script oder Binary in einem Verzeichnis liegt, auf das der User, unter welchem php läuft, keine Zugriffsberechtigung hat. Zunächst müsstest Du also noch herausfinden, mit welchen Rechten/ User php läuft.

stealthuser 
Fragesteller
 17.03.2024, 12:44

wie kann ich heraus finden unter welchen Rechten PHP läuft?

0
davegarten  17.03.2024, 21:49
@stealthuser

Die UID des effektiven Users (des aktuellen Prozesses) kannst Du mit

posix_geteuid()

oder mit

getmyuid()

abfragen.

Oder gleich den ganzen Dump machen:

print_r( posix_getpwuid(posix_geteuid()) );
1