Moin!
ich speichere Bilder ausserhalb des Webroots, um den Zugriff darauf kontrollieren zu können, der Aufruf erfolgt dann mit Übergabe eines aus Session-ID und Bildname generierten MD5-verschlüsselten Keys:
<?echo "<img src="show.php?dateiname=" . urlencode($bildbesitzer . "/" . $thumb) . "&key=$key" border="0" alt="" width="$breite" hoehe="$hoehe"></a>";?>
Mein Problem ist, dass die Bilder so nicht gecached werden. Hat jd. vielleicht einen anderen Lösungsansatz, der dieses Problem vermeidet?
Dein Problem ist, dass dein Ansatz nicht funktioniert. Ich kriege das Bild genau dann, wenn ich die korrekte URL angebe. Und sofern du deine Sessions nicht auf Cookies basieren läßt, wird an die URL eben auch die Session-ID angehängt, so dass sowohl die Session-ID, der Dateiname als auch die zugehörige MD5-Prüfsumme in der URL enthalten sind und stimmen.
Und wenn du die Cookies zwingend vorschreibst, funktioniert dein System bei all denen nicht, die keine Cookies zulassen - auch wenn sie korrekt auf deiner Seite surfen.
- Sven Rautenberg