Unterschiedliche working directory bei PHP über CLI (SSH) und PHP per Webserver

  • Hallo Zusammen,


    kann man bei einem Webhosting Paket (8000) die Pfade anpassen, die PHP Skripte als CWD bekommen wenn man sie per CLI bzw per Webserver abruft?

    Wenn man folgenden PHP Code auf per CLI ausführt, bekommt man sowas in der Art: /my-path/subdir Die gleiche Datei im Webbrowser gibt: /var/www/vhosts/hostingxyxyxyxyyx.netcup.net/my-path/subdir


    PHP
    1. <?php
    2. echo getcwd();


    Wieso stört das? Viele Anwendungen (z.B. Nextcloud) bekommen durch dieses Pfadverhalten Probleme.

    Deshalb die Frage - kann man die ENV Pfade für CLI Zugriffe ändern?

  • Danke für den Tipp für Nextcloud.

    Gibt es noch eine Alternative die Pfade richtig zu setzen - also unabhängig von Nextcloud

    Die Pfade sind ja jeweils korrekt - im CLI laufen sie über ein chroot.

    Wenn du sie "richtig" setzen würdest, wären sie wieder komplett falsch und die Skripte würden die angegebenen Dateien nicht finden.

  • Gibt es noch eine Alternative die Pfade richtig zu setzen - also unabhängig von Nextcloud?

    Der PHP-Code von KB19 hat ja nicht wirklich was mit nextcloud zutun.

    Du musst das halt in deiner Application ähnlich handhaben.


    Optimalerweise hast du eine Konstante irgendwo in einer config definiert, die das Stamm-Directory deiner Application hält. Und die könntest du ja so befüllen, dass sie jeweils für Cron oder Web- Aufruf auf den richtigen Ordner zeigt