fileDelete: file_exists(): open_basedir restriction in effect.

  • Affected Version
    WoltLab Suite 5.5
    Affected App
    WoltLab Suite Core

    Vielleicht übersehe ich etwas in der Konfiguration oder der Anwendung.

    Wenn ich über die Entwicklungstool das fileDelete PIP ausführen möchte erhalte ich ein Fehler sobald das Script auf eine Datei trifft die so noch auf dem Webspace vorhanden ist.

    Mir ist klar was der Fehler bedeutet, aber nicht weshalb das WCF hier Gross/Kleinschreibung fürs prüfen anpasst.

    • Official Post

    Danke für den Hinweis, open_basedir hatten wir in der Form nicht korrekt berücksichtigt.


    Mir ist klar was der Fehler bedeutet, aber nicht weshalb das WCF hier Gross/Kleinschreibung fürs prüfen anpasst.

    Nicht alle Dateilöschungen dienen der endgültigen Entfernung, in einigen Fällen wurde dies verwendet, um die Groß-/Kleinschreibung zu korrigieren. Bei einem case-insensitive Dateisystem (u.a. Windows) sind Test.txt und TEST.txt ein und dieselbe Datei, während beispielsweise bei einem typischen Linux-System Test.txt und TEST.txt zwei unterschiedliche Dateien sind, die parallel im selben Verzeichnis existieren können.


    Um also sicherzustellen, dass das Skript nur Dateien entfernt, wenn die Groß-/Kleinschreibung identisch ist, müssen wir mit einem Test herausfinden, ob das Dateisystem überhaupt zwischen den Schreibweisen unterscheidet. Die Umkehrung des gesamten Pfades dient dazu, zufällige Kollisionen auszuschließen.

Participate now!

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