Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Скачивание файлов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
max1985
Отправлено: 08 Июня, 2020 - 11:02:00
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2020  


Помог: 0 раз(а)




Здравствуйте!
Подскажите как реализовать скачивание файлов с другого сайта при этом чтоб ссылка на скачиваемый файл была внутренняя.
Т.е у нас есть два сайта, один лежит на собственном сервере, другой на ВПС.
Файлы находящиеся на сайте который расположен на сервере и имеют такой такой путь сайт1.ru/downloads/file.1.bin, сайт1.ru/downloads/file.2.bin и т.д..
На сайте, который находиться на ВПС, должны быть ссылки на файлы соответствующего вида сайт2.ru/downloads/?f=file.1.bin, сайт2.ru/downloads/?f=file.2.bin и т.д., при скачивании которых файлы тянуться с сайт1.ru.
Спасибо!
(Добавление)
Нашел такую конструкцию, но она почему-то не работает...
Закидываю в папку сайт2.ru/downloads/ файл index.php с таким содержимым:

CODE (text):
скопировать код в буфер обмена
  1. <?php
  2.  
  3. function file_force_download($file) {
  4.     $file='сайт1.ru/downloads/'.$file;
  5.   if (file_exists($file)) {
  6.     // сбрасываем буфер вывода PHP, чтобы избежать переполнения памяти выделенной под скрипт
  7.     // если этого не сделать файл будет читаться в память полностью!
  8.     if (ob_get_level()) {
  9.       ob_end_clean();
  10.     }
  11.     // заставляем браузер показать окно сохранения файла
  12.     header('Content-Description: File Transfer');
  13.     header('Content-Type: application/octet-stream');
  14.     header('Content-Disposition: attachment; filename=' . basename($file));
  15.     header('Content-Transfer-Encoding: binary');
  16.     header('Expires: 0');
  17.     header('Cache-Control: must-revalidate');
  18.     header('Pragma: public');
  19.     header('Content-Length: ' . filesize($file));
  20.     // читаем файл и отправляем его пользователю
  21.     readfile($file);
  22.     echo $file;
  23.     exit;
  24.   }
  25. }
  26.  
  27.  
  28. if(isset($_GET["f"]) && !empty($_GET["f"])){
  29.     file_force_download($_GET["f"]);
  30. }
  31.  
  32. ?>


Но скачивания не происходит. Что не так делаю?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB