you CAN do it with php but it will be slow, i've done it,
you can have a gateway php file that accesses ALL images and prints them out directly to the browser as if they were the images themselves. the intended graphics file is determined by the parameters given to the php file like showpic.php?file=aa.jpg
and the accessed directory could be totally invisible from the apache side, it only needs to be accessed through the filesystem, and could be on a completely different drive. the directory COULD be visible also but a difficult one like "/strangedir/hereare/dafiles" and the showpic.php would know that as a base and access all files from there.
but this IS slow, as said..
one big + is that you can log every single access to all files to a database very easily.
oz