Wemo Steckdose über Webserver

  • Ich bin ganz neu hier, hoffe ihr könnt mir weiter helfen. Ich hab folgendes Problem:

    Ich führe über ein Webserver eine php Datei aus die folgendes Script öffnet:

    Bash
    #!/bin/sh
    
    
    wemo switch Roteslicht toggle

    wenn ich das Script selbst öffne funktioniert es auch aber wenn es die php ausführt, passiert gar nichts..
    wenn ich dann noch folgendes hinzufüge:

    Bash
    #!/bin/sh
    wemo switch Roteslicht toggle
    gpio export 18 out


    wird mein Gpiopin angesteuert aber das Licht bleibt aus, also stimmt wohl etwas mit dem "wemo" befehl nicht..

    Meine Frage ist wie muss ich es umschreiben, damit es Funktioniert??


    Nachtrag 22.05.16 16:21
    Also um es nochmal genauer zu machen:
    Ich benutze als Server Apache2, dort hab ich mir jetzt nochmal die error.log angeguckt und die sagt folgendes:


    In der letzten Zeile steht "/var/www/.wemo" aber in der neueren Version von apache2 sind die Dateien in "/var/www/html" hat dass vielleicht etwas zu sagen??

    Einmal editiert, zuletzt von Regam (23. Mai 2016 um 14:42)


  • Ich führe über ein Webserver eine php Datei aus die folgendes Script öffnet:

    Es wäre toll zu wissen, wie du das Script per PHP ausführst.
    Außerdem mal bitte

    Code
    ls -l /var/www

    . Ich glaube, der Benutzer www-data hat bei dir einfach keine Schreibrechte für das Verzeichnis.

  • Schon mal vielen Dank für die Antwort;)

    die PHP Datei:

    PHP
    <?php
    shell_exec ('/pfad/zur/datei/start.sh');
    ?>


    Die Rechte sind:

    Code
    drwxr-xr-x 4 root www-data 4096 Mai 21 20:38 html
  • PHP
    <?php
    shell_exec ('/pfad/zur/datei/start.sh');
    ?>


    Kein sudo. Somit wird der Code schon mal als Benutzer www-data ausgeführt.



    Die Rechte sind:

    Code
    drwxr-xr-x 4 root www-data 4096 Mai 21 20:38 html


    Sorry, hätte

    Code
    ls -l -a


    heißen müssen, damit .wemo mit angezeigt wird.


    Aber man sieht hier, der Benutzer www-data hat keine Schreibrechte am Ordner html. Gemäß der Fehlermeldung aus dem ersten Post

    Code
    File "/usr/lib/python2.7/os.py", line 157, in makedirs
       mkdir(name, mode)
    OSError: [Errno 13] Permission denied: '/var/www/.wemo'


    Gehe ich davon aus, dass das für .wemo genauso ist. Probiere mal

    Code
    sudo chown -R www-data:www-data


    Um den Benutzer www-data als Eigentümer für den Ordner .wemo einzutragen.

    Einmal editiert, zuletzt von WitheredMud39507 (23. Mai 2016 um 11:25)

  • Also ich hab den Benutzer geändert und ihm Schreibrechte gegeben und schon hat es geklappt. :D

    Vielen dank an [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]DiHydrogenOxide, ohne dich hätte ich noch Ewigkeiten in den coden rum gesucht!![/font]

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!