Секреты скачивания файлов

Рано или поздно каждый пользователь Интернета сталкивается с необходимостью скачать файл. Это может быть программа, документ, картинка или фильм - да мало ли что еще. И очень обидно бывает, когда с таким трудом найденный файл почему-то отказывается скачиваться или оказывается испорченным. Сегодня мы попробуем поговорить о процессе скачивания, программах, которые могут пригодиться, и методах достижения желаемого результата, несмотря на противодействие серверов...

Для начала попробуем классифицировать ошибки. Чаще всего встречается знаменитая ошибка 404 - "файл не найден". Означает она, как обычно и написано, что файл был перемещен в другое место или удален. Стандартных методов борьбы с такой ошибкой два: либо поискать копию нужного файла (он вполне может "жить" на каком-то другом сервере), либо попробовать пройти по адресу в обратном направлении. Например, если ошибочный адрес выглядит как http://www.somesite.com/docs/projects/files/needed_file_1.zip, то имеет смысл поробовать открыть в браузере адрес http://www.somesite.com/docs/projects/files/, если не получится, то http://www.somesite.com/docs/projects/, затем http://www.somesite.com/docs/ и т.д. Если файл был переименован (например, вышла новая версия программы), то с большой долей вероятности в одной из этих директорий найдется либо сам файл (если на сервере не запрещен показ списка файлов), либо страница, на которой о нем будет сказано. Этот же метод работает и для FTP-серверов - страница там вряд ли найдется, а вот файл - вполне.

Следующая ошибка - это всевозможные 5хх коды, которые говорят о том, что на сервере произошла ошибка при выполнении запроса. Тут особо ничего не поделаешь, можно либо подождать, пока сервер починится, либо поискать другие зеркала.

Встречаются еще и ошибки, связанные с перегрузкой сервера (обычно это относится к FTP-серверам). Как правило, владельцы таких серверов устанавливают ограничение на число одновременных соединений, и, если сервер популярен, вероятность того, что вы окажетесь "лишним", довольно высока. В этом случае имеет смысл попробовать повторить попытку скачивания несколько раз подряд: есть достаточно высокий шанс, что у кого-то скачивание закончится, и вы получите доступ. Очень удобно для этого использовать какой-нибудь download manager - эти программы умеют автоматически распознавать такую (и многие другие) ошибку и повторять запросы на скачивание файла.

На этом, так сказать, "правильные" ошибки можно считать законченными. Посему перейдем к более интересному вопросу, а именно - ко всяческим "глупым требованиям" различных сайтов при скачивании файлов. Большинство этих требований сводятся к необходимости регистрации, требованию посмотреть какую-то рекламную страничку или перейти на другой сервер.

Практически все эти "неудобства" возникают, как и большинство остальных вещей в этом мире, из-за денег. Владельцам сайтов приходится платить за трафик, и для того чтобы вы могли бесплатно скачивать файлы из Интернета, эти деньги приходится как-то добывать. Одним из наиболее распространенных способов добычи денег является реклама. Поэтому вполне естественно, что владельцы сайтов придумывают разные способы, чтобы эту рекламу вам показать. Но рекламодатели сейчас пошли умные и редко платят просто за число показов: они требуют, чтобы смотрели страницу не менее какого-то количества времени (скажем, 30 секунд), или оплачивают переходы по рекламным ссылкам, или же отдают владельцу сайта какой-то процент от заказов, сделанных посетителем, пришедшим с этого сайта.

Есть и еще одна причина - выше я писал про ограничения на количество соединений и размер трафика. И чем больше "чужих" ссылок на скачивание файлов стоит, тем с большими трудностями сталкиваются посетители сайта, пытаясь скачать файл. А все шишки при этом сыпятся на голову веб-мастера... Недаром среди, так сказать, профессиональных веб-мастеров подобное поведение называется "воровством трафика" и считается плохим тоном. В то же время указание ссылок на страницы сайта вполне приветствуется.

Теперь рассмотрим, как все это выглядит на практике. Предположим, что у себя на сайте я положил файл по адресу http://www.listsoft.ru/price_html.zip Так как за трафик мне приходится платить, то у меня возникает вполне естественное желание сделать так, чтобы файл могли скачать только посетители моего сайта (денег они мне, конечно, не приносят, но, во-первых, видят рекламу, во вторых, поднимают посещаемость сайта, в третьих - вдруг им понравится и они начнут регулярно ходить). А убедиться в том, что это "мой" посетитель, я могу, например, проверив referrer (специальное поле в запросе к серверу, в котором указывается, с какой страницы пришел посетитель). Можно придумать и еще какие-нибудь методы определения того, что пользователю разрешено скачивать файл - например, при посещении сайта записывать в cookie время посещения, а при попытке скачать файл - это значение читать. Если на сайте установлены подобные правила, то сложности у вас могут возникнуть, например, если вы установили какой-то брандмауэр, блокирующий реферреры и cookies, или же запретили их передачу в настройках браузера.

В том случае, если я договорился о сотрудничестве с рекламодателем, который платит за переходы, или же если я получаю процент с продаж, то мне хочется сделать так, чтобы посетители рекламу не просто "пролистнули", а прочитали более внимательно. Добиться этого можно, введя специальные задержки перед началом скачивания файла (примерно так же, как люди, сидя в приемной, смотрят какие-то разложенные журналы, мимо которых просто прошли бы в другом случае). Достигаются такие задержки чаще всего вставкой специального мета-тега в заголовок страницы, который вызывает перенаправление этой страницы на адрес файла через заданное время. Здесь проблемы могут возникнуть в том случае, если какая-то программа или настройки браузера запрещают META REFRESH (в частности, это происходит, если в Internet Explorer установить высокий уровень безопасности).

Иногда (правда, очень редко) при щелчке на ссылке открывается какая-то рекламно-информационная страница, открывающая в конце своей загрузки новое окно, которое, в свою очередь, запускает скачивание. Такая схема может дать сбой, если у вас стоят программы, блокирующие открытие новых окон (или установлены соответствующие настройки).

Требование регистрации перед скачиванием - еще один способ окупить трафик. Дело в том, что реклама в рассылке, как правило, более эффективна, чем ее показ на сайте, тем более, что рассылка делается по интересующей вас тематике (а если тематика сайта вас не интересует, то зачем вы с него файлы скачиваете?) Для "страховки" от ввода неправильного адреса иногда применяется следующий метод: требуемый файл архивируется с паролем, а пароль отсылается на введенный вами адрес. Так что, если вы указываете что-то вроде me@here.com, то рискуете остаться с бесполезным файлом.

Все вышесказанное относится, так сказать, к штатным ситуациям. Но порой встречаются и значительно более неприятные вещи...





Ваш файл вы сможете скачать кликнув по банеру = >