Hallo,
ich würde die Bilder in einem per HTTP nicht erreichbaren Verzeichnis lagern (außerhalb des Document-Roots oder per deny from all in .htaccess gesichert (Apache)) und mir ein PHP-Skript schreiben, dass per readfile() das Bild aus dem geschützen Verzeichnis liest und an den Browser sendet.
das würde ich nicht tun. Es ist ein hier immer wieder als gängige Methode beschriebenes Vorgehen, daher will ich hier ein Veto formulieren:
PHP wird meist über CGI _gestartet_ - und das für jeden Request an eine Resource, während der Webserver allermeist dafür bereits Prozesse vorgeforkt/Threads vorhält. Der Request wird via PHP also (zwar unmerklich aber) erheblich länger für seine Abarbeitung benötigen. Zudem kommt auch noch, daß Webserver eingehende Verbingung eine Zeit lang offen halten (keep alive). PHP ist auch nicht gerade klein im Arbeitsspeicher und wird für die Zeit, die die Verbungung offen ist, ebenso "am Leben" gehalten.
Es ist allso in mehreren Hinsichten besser HTTP-Auth zu verwenden.
Gruß aus Berlin!
eddi