Pocsag Webinterface bauen

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Forum,

    habe auf mein PI1 das Programm rpitx drauf (Apache und Co logisch wie immer),

    Nun wollte ich ein Webinterface mir bauen aber leider kommt das nicht zum senden.

    in der Konsole läuft das super.

    In zwischen laß ich, über Dateirechte könnte man das klären aber da stehe ich ja leider im Wald.

    Was soll ich wirklich machen oder vorgehen.

    danke

  • aktuell habe ich

    Dateirechte

    Code
    pi@pocsag:~ $ ls -al /home/pi/rpitx/pocsag
    -rwxrwxrwx 1 pi pi 95376 Dez 16 09:03 /home/pi/rpitx/pocsag
    pi@pocsag:~ $ ls -al /var/www/html/pocsag/index.php
    -rwxrwxrwx 1 www-data www-data 727 Dez 16 17:33 /var/www/html/pocsag/index.php

    visudo

    Code
    #includedir /etc/sudoers.d
    www-data ALL=NOPASSWD: /var/www/html/
    www-data ALL=NOPASSWD: /home/pi/

    hab mir das echt etwas einfacher vorgestellt.

    lars

  • =O Schlimmer geht es bezüglich visudo kaum, aber dazu sage ich jetzt mal nichts.

    Was passiert damit (statt Zeile 8 mit shell_exec):

    PHP
    exec('printf "0022048:Test" | /bin/bash /home/pi/rpitx/pocsag -f 439987500 -r 1200 -t 2', $output, $retval);
    echo "Status: $retval\n";
    print_r($output);

    ?

  • Das steht in den Manuals https://www.php.net/manual/de/function.shell-exec.php und https://www.php.net/manual/de/function.exec.php. ;)

    Der Statuscode 126 sagt ein Befehl wurde gefunden, aber ist nicht ausführbar. Was das ist (ggf. fehlender absoluter Pfad zu printf) weiß ich aber nicht und hoffte auf $output. Das da nur Array ( ) kommt finde ich seltsam. Vielleicht kommt mehr, wenn der Ausgabepuffer gesendet wird.

    Ich würde das mal so versuchen:

    PHP
    exec('printf "0022048:Test" | /bin/bash /home/pi/rpitx/pocsag -f 439987500 -r 1200 -t 2', $output, $retval);
    echo "Status: $retval\n";
    ob_flush();
    flush();
    print_r($output);
    ob_end_flush();

    Btw. PHP ist bei mir schon ne ganze Weile her. :blush:

  • Code
    exec('printf "0022048:Test" | /bin/bash /home/pi/rpitx/pocsag -f 439987500 -r 1200 -t 2', $output, $retval);
    echo "Status: $retval\n";
    print_r($output);
    ob_flush();
    flush();
    print_r($output);
    ob_end_flush();
    ?>  

    Status: 126 Array ( ) Array ( )

    muß ich irgendwie die Rechte ändern das www-data auf pi zugreifen kann oder kann ich das programm als www-data installieren.

    in visudo habe ich die letzten beiden zeilen wieder entfernt. weil es geht ja nicht mit den zeilen

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!