PHP имеет pathinfo для получения расширения путей к файлам или Fileinfo для получения mime-типа.
Что касается наблюдения за URL, вы можете создатьбаза данных со ссылками на имена файлов, так что ваш URL может выглядеть как view_file.php?file_id=123
, никто не будет знать его на самом деле important.doc
.