alternativa: colocar los archivos fuera del documentroot y tener un script que los lea y los entregue usando las cabeceras html adecuadas a su tipo.
Usar las funciones para el manejo de ficheros.
www.php.net/manual/es/ref.filesystem.php
en las faq creo que hay ejemplos.