diff --git a/download_file.php b/download_file.php index 80c78a4..8b499d1 100644 --- a/download_file.php +++ b/download_file.php @@ -62,6 +62,12 @@ function file_force_download_url($url, $name) { echo file_get_contents($url); exit; } + + // Фолбэк: файла ещё нет в Selectel (окно до офлоада) или Selectel недоступен — отдаём с локального диска. + $local = str_replace('https://uf.joywork.ru', $_SERVER['DOCUMENT_ROOT'], $url); + if ($local !== $url && file_exists($local)) { + file_force_download($local, $name); + } } function doesFileUrlExists($url) { @@ -205,6 +211,13 @@ if (isset($_GET['arhive'])) { if (file_exists($file)) { $zip->addFile($file, $r['name']); + } else { + // файл уехал в Selectel — тянем содержимое и кладём в архив из памяти + $url = str_replace($_SERVER['DOCUMENT_ROOT'], 'https://uf.joywork.ru', $file); + $data = @file_get_contents($url); + if ($data !== false) { + $zip->addFromString($r['name'], $data); + } } } } @@ -226,6 +239,13 @@ if (isset($_GET['arhive'])) { if (file_exists($file)) { $zip->addFile($file, $r['name']); + } else { + // файл уехал в Selectel — тянем содержимое и кладём в архив из памяти + $url = str_replace($_SERVER['DOCUMENT_ROOT'], 'https://uf.joywork.ru', $file); + $data = @file_get_contents($url); + if ($data !== false) { + $zip->addFromString($r['name'], $data); + } } } } @@ -287,22 +307,27 @@ if (!isset($_GET['download']) && isset($_GET['preview'])) {