Pocsag Webinterface bauen

  • 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

  • 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