Frage

I 2 Ordner haben: /var/www/vhosts/mydomain.com/httpdocs/ und /var/www/vhosts/mydomain.com/httpdocs/duh /

Beide Ordner haben die exakt gleiche perms, Gruppe, Eigentümer, alles.

Wenn ich $ Pfad zum ersten gesetzt, keine Probleme, echo ich eine Liste von Dateien, die mit ‚html‘ im Dateinamen.

Wenn ich $ Pfad zum zweiten Eins gesetzt, stirbt er am opendir (). Allerdings funktioniert es gut von der Kommandozeile, nur nicht den Browser.

Irgendwelche Ideen?

Hier ist mein sehr einfacher Code:

<?php
        $path = "/var/www/vhosts/mydomain.com/httpdocs/duh/";

        $img_folder = opendir($path) or die("Unable to open $path");

         while (false !== ($file = readdir($img_folder))){
             if (eregi("html", $file)){
                echo $file;
             }
         }
    ?>
War es hilfreich?

Lösung 3

dachte ich es aus. Der Server, auf dem ich arbeite hat lokale Konfigurationsdateien für jeden vhost. safe_mode wurde auf für die lokale conf auf.

Dank denen, die mich auf dem Weg geführt hat.

Andere Tipps

Was sind die Berechtigungen für den duh Ordner? Denken Sie daran, dass der Webserver wird unter einem anderen Benutzer-ID als Ihre Shell-Account ausgeführt werden. Achten Sie darauf, die dir den Modus 0755, so dass es für alle Benutzer lesbar ist.

oops, nur Ihr Kommentar mit der Fehlermeldung. Also, ja, Berechtigungsfehler. duh wird durch Benutzer-ID 10012 gehört, während der Web-Server als root ausgeführt wird. abgesicherter Modus wird dies nicht zulassen. 'Chown' das Verzeichnis root gehört ...

Natürlich, warum läuft der Webserver als root? Das ist schrecklich unsicher.

Nun, jetzt wissen Sie die Antwort. Seine SAFE_MODE, einer der hässlichsten PHP-Features
Es gibt einige Workarounds, aber die besten von ihnen ist von diesem Host laufen, so schnell wie möglich!
oder einen Weg finden, um sie zu deaktivieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top