Я пытаюсь загрузить защищенный zip-, rar-файл. Попробовав сотни различных заголовков и комбинаций, я потерялся. Я не могу загрузить изображения, pdf, но zip и rar повреждены.
Где проблема?
Код
$url = url_for('/staff/photos/error.php');
$error = $url;
//$filepath = 'C:\wamp\www\photo_gallery\public\files\3d_models';
$url2 = PROJECT_PATH.DS.'public'.DS.'files'.DS.'3d_models';
$filepath = $url2;
$filename = null;
if (isset($_GET['file']) && basename($_GET['file']) == $_GET['file']) {
$filename = $_GET['file'];
} else {
header("Location: $error");
exit;
}
if ($filename) {
$abs_path = $filepath . DIRECTORY_SEPARATOR . $filename;
if (file_exists($abs_path) && is_readable($abs_path)) {
header($_SERVER['SERVER_PROTOCOL'].' 200 OK');
header("Content-Type: application/zip");
header("Content-Type: application/rar");
header("Content-Transfer-Encoding: Binary");
header('Content-length: ' . filesize($abs_path));
header('Content-disposition: attachment; filename=' . $filename);
readfile($abs_path);
} else {
header("Location: $error");
}
}