Script über php aufrufen

Python in C/C++ embedden, C-Module, ctypes, Cython, SWIG, SIP etc sind hier richtig.
Antworten
Molix0406
User
Beiträge: 3
Registriert: Mittwoch 12. April 2023, 15:57

Folgend mein Setup welches soweit vollständig funktioniert:
- ich rufe über eine URL ein PHP Skript auf, welches $code = escapeshellcmd('python3 /home/torsten/py/PMLed.py');
$ergebnis = shell_exec($code);
- es soll Leds blinken lassen

Nun zum Problem:


- Python Skript direkt über die Shell ausgeführt - funktioniert
- PHP Skript über die Shell ausgeführt - funktioniert (lässt auch die LEDs blinken)
- PHP Skript über den Browser ausgeführt - funktioniert nur bis GPIO.setup(23, GPIO.OUT) die LEDS blinken nicht und die Textausgabe funktioniert nur bis dahin.

Bin mit meinem Latein am Ende, habe auch im Netz noch keinen Lösungsansatz gefunden, vieleicht habt Iht noch eine Idee?

Danke und viele Grüße

Molix
Benutzeravatar
__blackjack__
User
Beiträge: 13117
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Molix0406: Ich würde auf ein Rechteproblem tippen — der Benutzer unter dem der Webserver läuft, hat keine Rechte auf die GPIO-Pins zuzugreifen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Molix0406
User
Beiträge: 3
Registriert: Mittwoch 12. April 2023, 15:57

Danke das werde ich mal probieren.
Molix0406
User
Beiträge: 3
Registriert: Mittwoch 12. April 2023, 15:57

!!Danke !!


user www-data in die Gruppe gpio fügen und schon geht es, da die pins nur User aus der Gruppe gpio nutzen dürfen

sudo adduser www-data gpio
sudo systemctl restart apache2

Grüße

Molix

P.S. im Nachhinein muss ich mir ja selbester an den Kopf greifen :roll:
Antworten