Forum Webscript.Ru

Программирование => PHP => Тема начата: SnicK от 10 Мая 2007, 23:26:39

Название: Вопрос по Сокетам
Отправлено: SnicK от 10 Мая 2007, 23:26:39
У меня такая ситуация:
Есть сайт, расположенный на локальном хостинге
При этом большая часть фаилов хранится на другом хостинге(не локальном), поэтому для бесплатного скачивания пользователями фаилов с сайта применяется следущая схема:
1) Клиент подаёт запрос в скрипт на фаил, из базы берётся путь к этому фаилу на другом сервере
2) Скрипт соединяется с файловым сервером и выдаёт запрошенный фаил пользователю

Я хочу спросить как лучше это реализовывать, поделитесь опытом
1)Делать простое копирование на локальный сервер и выдавать пользователю ссылку(затем удалять с локального после скачивания)
2)Создавать соединение через сокет затем построчно читать и выдвать фаил построчно

Либо есть более целесобразный вариант?
Название: Вопрос по Сокетам
Отправлено: Yourock от 11 Мая 2007, 08:16:39
а НЕлокальный сервак я так понимаю предлагает только платное скачивание?

А чем не подходит вариант генерации в скрипте на локальном серваке ссылки на файл удаленного сервера?
Название: Вопрос по Сокетам
Отправлено: SnicK от 11 Мая 2007, 12:31:35
Нет локальный сервак это обычный сайт вроде sait.com просто на нём гораздо больше места и лежат фаилы для скачивания к примеру sait.com/4toto.zip

А если просто генерировать ссылку на нелокальный сервер, то весь смысл теряется т.к. для скачивающего трафик с НЕ локального сервера для посетителя ОПЛАЧИВАЕТСЯ

Я же всё объяснил
Название: Вопрос по Сокетам
Отправлено: KiraSin от 16 Мая 2007, 11:52:08
Попробуй такую конструкцию:

$remotefilename = "http://site.com/4toto.zip";
header(\'Content-Disposition: attachment; filename="4toto.zip"\');
header("Content-Transfer-Encoding: binary\\r\\n");
header("Content-Length: ".(filesize($remotefilename ))."\\r\\n");
if(is_readable($remotefilename))
{
  readfile($remotefilename );
}
else
{
  die("error");
}