Я создал страницу с использованием php и mysql, которая требует от пользователя входа в систему для загрузки различных платных программ. Они могут нажать на ссылку, как здесь, и программа загружается и работает правильно.
$c3 = mysql_result($result,$i,"exe");
echo "<a href='$c3'>... etc
Однако свойства RT-click позволяют им видеть путь к этому файлу, поэтому я изменил приведенное выше значение на:
$c3="downloads3.php?link=".mysql_result($result,$i,"exe");
Где downloads3.php выглядит следующим образом:
<?php
$file = $_GET['link'];
$size = filesize($file);
$type = filetype($file);
$path = "../downloads/";
header('Content-Type: $type');
header("Content-Transfer-Encoding: Binary");
header("Content-Disposition: attachment; filename=$path.$file");
header("Content-Length: ".filesize($file));
readfile($file_url);?>
?>
Он находит правильный файл, и я получаю предупреждение системы безопасности, но, в любом случае, нажимая кнопку «Выполнить», он немедленно выдает сообщение об ошибке Windows, что файл не совместим с этой версией Windows. Должно быть что-то в заголовке выше, но не могу понять, что. Пробовал различные перестановки.
Какие-нибудь блестящие идеи, или заставить работать вышеупомянутое или другие способы скрыть исходный путь? Спасибо.