Taka konstrukcja powinna dać radę:
Odnośnik do pliku robisz w formie np.
file.php?name=index.htmlW pliku file.php robisz tak:
<?php
header('Content-type: text/html'); header('Content-disposition: attachment; filename="nazwa_pliku.html"'); ?>
Dla odpowiednich plików musisz oczywiści dodać obsługę odpowiednich typów mime.
Może być też tak, że różnie będzie to działać w IE i FF - ale to już będziesz wiedział na jaki temat szukać ;)
pozdr.