2017-09-14 2 views
0

Hier ist ein wenig Klarstellung erforderlich.Einstellen der Dateiberechtigungen auf einem Webserver

Ich habe einen Ordner auf meinem Webserver, der vertrauliche Informationen enthält, die niemand lesen darf. Mein Skript zur Zeit tut dies:

macht den Ordner mit 0777 Erlaubnis und platziert ein Bild in diesem Ordner

Ich habe ein zweites Skript, das tut dies:

das Bild von diesem bestimmten Ordner zieht, und zeigt es dem Benutzer

Aber jetzt, wenn der Benutzer den genauen Namen des übergeordneten Ordners kannte, können sie es einfach in ihrem Browser eingeben und sehen alle Bilder in diesem Ordner, wie: www.testsite/test/images

Welche Dateiberechtigung kann ich anstelle von 0777 verwenden, damit diese beiden Skripte in den Ordner schreiben und einlesen können, OHNE dass jeder den Inhalt des Ordners anzeigen kann, wenn er es in seinem Browser eingibt?

+0

Warum würden Sie es auf "000" setzen? Dann ** niemand könnte es lesen. Ist das beabsichtigt? Sind Sie sicher, dass Sie nicht einfach '700' wollen? –

+0

Sorry, ich habe einige wichtige Informationen weggelassen, die Frage – arsenalftw067

Antwort

1

Wenn ich Ihr Problem richtig verstehe, machen Sie sich Sorgen, dass ein Benutzer /test/images/ in die URL-Leiste eingibt und die Verzeichnisliste mit Ihrer geheimen Datei sieht.

eine chmod von 000 würde Einstellung bedeuten, dass weder Ihrer Skripte (noch Sie) auf den Ordner zuzugreifen würde.

Meiner Meinung nach, Sie wären viel besser dran mit .htaccess mit deny from all. Dies macht es so, dass Sie keine Datei in diesem Ordner "öffnen" können, obwohl Sie sie immer noch in PHP einbinden können.

Alternativ können Sie auch einen Ordner index.php in Ihrem Ordner /images/ erstellen und eine automatische Weiterleitung mit header('Location: /') einrichten. Auf diese Weise würde ein Benutzer die Verzeichnisliste nicht sehen können.

Hoffe, das hilft! :)

+0

bearbeitet, dass index.php im Bilderordner genial ist! nur um zu klären, wird der Ordner automatisch auf das index.php Skript rechts aufrufen? und alles, was ich dort hinein tun müsste, ist die Weiterleitung? Danke das hat geholfen! ziemlich coole Idee, werde das ausprobieren! – arsenalftw067

+0

Ja; Das Navigieren zu einem Ordner wird automatisch versuchen, dort nach dem relevanten Index zu suchen - '.index.html',' index.php' usw. Wenn die einzige Datei dort 'index.php' ist, wird ** automatisch ** angezeigt '.index.php' für den Benutzer, und so werden sie automatisch geleitet. Sie werden die Verzeichnisliste nie sehen, noch wird es in irgendeinem der Protokolle Spuren davon geben. –

+0

Was ist mit diesem Beispiel: innerhalb der/test/Bilder haben wir/images/1/305,/images/2/305, der Benutzer kann immer noch diese in ihrer URL hinzufügen und diese Ordner besuchen, auch wenn ich Index habe .php leitet sie in den Bilderordner um Wie leite ich sie für jeden Unterordner innerhalb des Bilderordners um? Der beste Weg wäre mit Datei Permissoin oder? – arsenalftw067