Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Mai

SELFHTML Forumsarchiv
Datei aus geschütztem Verzeichnis lesen

Informationsseite
  1. Seite (PHP) Datei aus geschütztem Verzeichnis lesen von Patrick, 31. 05. 2007, 17:27
nach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: Patrick, 31. 05. 2007, 17:27

Hi Forum,

wie kann ich mittels PHP eine Datei aus einem mit htaccess geschützten Verzeichnis lesen und ausgeben?
z.B. bei PDFs.

Danke
Patrick

nach obennach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: wahsaga, 31. 05. 2007, 17:36

hi,

»» wie kann ich mittels PHP eine Datei aus einem mit htaccess geschützten Verzeichnis lesen und ausgeben?

Du redest vom Zugriff über HTTP?
In dem du die Auth-Daten mitgibst.

http://www.php.net/manual/de/wrappers.http.php

gruß,
wahsaga


--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }

nach obennach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: Patrick, 31. 05. 2007, 18:24

Hi wahsaga,

nein, eigentlich nicht.
PHP soll die Datei direkt einlesen, quasi ohne Link.
Nur auf Filebasis.

»» Du redest vom Zugriff über HTTP?
»» In dem du die Auth-Daten mitgibst.

Grüße
Patrick

nach obennach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: Pia, 31. 05. 2007, 18:40


Hi,

»» nein, eigentlich nicht.
»» PHP soll die Datei direkt einlesen, quasi ohne Link.
»» Nur auf Filebasis.
»»

Dann interessiert auch kein htacces oder sonstwas.


readfile
include
require
file_get_contents
...etc.


carpe diem
Pia

nach obennach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: Steel (ohne Anmeldung), 31. 05. 2007, 19:08

Das stimmt. Solange das Script und das geschuetze Verzeichnis dem gleichen Server gehoeren... Ich hab hier den Verdacht, dass dem nicht so ist, oder?

nach obennach unten

Datei aus geschütztem Verzeichnis lesen

Die folgende Nachricht zum Thema stammt von: afra, 31. 05. 2007, 20:19

Hallo Patrick!

Du willst sicherlich aus einem geschützen Verzeichnis Dateien zum Download anbieten, die nur von angemeldeten Usern herunter geladen werden können. Das könntest Du auch über einen htaccess Zugriffsschutz erreichen. Wesentlich aufwändiger weil sicherheitskritischer könntest Du es über PHP ausliefern. Also lesen, header basteln und ab damit. Beachte meine Anmerkung am Ende.

Überprüfen ob das File da ist:
file_exists($filename)

Fileextension und Content Type bestimmen
$file_extension = strtolower(substr(strrchr($filename,"."),1));
switch ($file_extension) {
    case "pdf": $ctype="application/pdf"; break;
    case "exe": $ctype="application/octet-stream"; break;
    case "zip": $ctype="application/zip"; break;
    case "doc": $ctype="application/msword"; break;
    case "xls": $ctype="application/vnd.ms-excel"; break;
    case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpe": case "jpeg":
    case "jpg": $ctype="image/jpg"; break;
    default: $ctype="application/force-download";
}

Diverse Header setzen:
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Content-Type: $ctype");
header ("Content-Disposition: attachment; filename=$filename");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".@filesize($filename));
set_time_limit(0);
@readfile("$filename") or die("Keine Datei");

Unbedingt daran denken, dass Du sicher gehen musst, dass keine anderen Verzeichnisse als das von Dir gewünschte vom Script aufgerufen werden kann. Am besten mit einer Positivliste.

Schönen Gruß
Afra
--
Endlich Ruhe

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Mai

© 1998-2006 Seite Impressum, Software: Classic Forum