Direkten Aufruf von Dateien verbieten

louS

Mitglied
Hallo,
ich hänge seit knapp 2 Tagen an einem Problem und ich weiß nicht mehr weiter.

Ich biete auf meiner Seite e-Magazines an, wo nur registrierte User Zugriff drauf haben sollten und die Ordnerstruktur sieht in etwa so aus:

name_des_emags/ausgaben_nummer/die_files_die_zum_emag_gehören

In jedem dieser Ordner ist u.a. ein scripts Ordner, eine Flash.html (Diese zeigt das emagazine an) usw.

Auf meiner Hauptseite können sich die Leute einloggen und die Magazine liegen in einem anderen Ordner, die über eine subdomain erreicht werden können. Die Session kann ich auch ohne Probleme weitergeben, allerdings weiß ich jetzt nicht, wie ich all diese Ordner vor einem direkten Aufruf schützen kann und das diese NUR aufgerufen werden können, wenn die Session übereinstimmt.

Kann mir da einer evtl. auf die Sprünge helfen? Mit der "HTTP-Authentifizierung mit PHP" hab ichs auch schon probiert, allerdings kann man dann immer noch (sofern man den Pfad kennt) die Dateien aufrufen.
 
Indem du den Ordner komplett schließt, z. B. über die Apache Direktiven Deny / Allow des Access Control.
Oder du lagerst die Dateien direkt außerhalb des Document Root des Webservers.

Danach kannst du per Downloadskript mit PHP die Daten ausgeben.
[phpf]readfile[/phpf] hilft dir da weiter.
 
Genau,
Das heißt: Du erstellst eine .htaccess datei ((!)mit keinem dateinamen(!))
und schreibst hinein:
Code:
Deny from all
So heißt der Befehl für die htaccess Datei(Das hat felix jacobi mit Deny / Allow gemeint).
Wenn das nicht funktioniert kannst du auch:
Code:
Order deny,allow
Deny from all
Allow from www.deinewebsite.com
Das müsste gehen. :D
LG
Daniel0108
 
Genau,
Das heißt: Du erstellst eine .htaccess datei ((!)mit keinem dateinamen(!))
Grundsätzlich heißt die Datei ".htaccess"
*NIX-artige Betriebssysteme brauchen keine Dateiendung und der "." am Anfang bedeutet, dass dies eine versteckte Datei ist.

So heißt der Befehl für die htaccess Datei(Das hat felix jacobi mit Deny / Allow gemeint).

Deshalb steht das ja nicht nur da, sondern verlinkt sogar auf die Apache Dokumentation ;)
 
Ja, hab es eigentlich ja für ihn nur zusammengefasst, da die apache dokumentation für anfänger vielleicht nicht so leicht verständlich ist.
Und zu .htaccess : Ich habs nur dazugeschrieben weil ich das kenne, das viele Neulinge dann hallo.htaccess schreiben was natürlich nicht stimmt :D
LG
Daniel0108
 
Zurück