Im Prinzip geht das, so lange der User (unter dem der Webserver läuft) die Dateien lesen kann. Unter Sicherheitsaspekten besehen ist neben der Authentifizierung und Prüfung eventueller individueller Zugriffsberechtigung(en) insbesondere die Prüfung des Namens der angeforderten Datei bzw. Ressource ein Job, den jemand programmieren sollte, der sehr genau weiß was er da tut.
Sonst steht man Montags bei heise.de
Dein Skript muss folgendes können:
- Benutzer authentifizieren (lassen)
- Zugriff erlauben oder verbieten
- Übergebenen Dateiname/Adresse UMFASSEND prüfen (sind nicht erlaubte Zeichen oder Zeichenfolgen wie "../" oder "..\" drin?), eventuell Abbruch
- Überprüfen der Existenz der Datei, eventuell Abbruch, eventuell "Umbau" des Dateinamens
- Ermitteln des Content-Types z.b. mit
finfo_file()
- Senden des Content-Types und weiterer Angaben mit
header()
- Senden der Datei z.B. mit
readfile()