<< Главная страница

Докачивание файлов с помощью
Internet Explorer

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

Здесь достаточно разумной кажется потребность обзавестись удобной программой-качалкой, которая умеет подхватывать прерванную загрузку файлов. Хотя это справедливо только в том случае, когда пользователь чаще частого качает файлы из Интернета и располагает лишним временем и средствами на поиск программы, ознакомление с ней. Однако зачем париться нам, кому качать файлы случается по великим праздникам, когда под рукой имеется internet explorer, который будто бы и не знает, что такое дозагрузка файлов.

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

В первую очередь нужно уточнить, что возможности дозагрузки файлов должен поддерживать непосредственно сервер, с которого вы грузите файл. Иначе даже программа-качалка вам не поможет - файл будет качаться с самого начала. По html-протоколу разрешается в запрос на получение файла ввести специальное поле range: bytes nnn-, где параметр nnn указывает позицию в байтах от начала файла. Именно с этой позиции продолжится выгрузка файла. Запрос за вас сформирует сам браузер, лишь бы сервер поддерживал обработку этого поля. Кроме того, если вы работаете не по прямому соединению, а через прокси-сервер, то очень важно, чтобы и он поддерживал возможность дозагрузки, ведь в противном случае прокси-сервер будет отсекать из вашего запроса необходимое поле.

Теперь, собственно, поговорим об осуществлении дозагрузки. В том нет ничего удивительного, что internet explorer умеет догружать файлы. Вряд ли кого-нибудь удивит факт, насколько легко браузер догружает прерванные web-страницы. Во время загрузки содержимое страниц сохраняется в кэше - это папка на жестком диске, где заданный в настройках период времени хранятся файлы недавно загруженных web-страниц. По умолчанию папка временных файлов называется "c:windowstemporary internet filescontent.iex", где x - номер версии вашего браузера. Точно также прочие закачиваемые файлы (не содержимое web-страниц) временно хранятся в кэше, пока не будут загружены полностью. Как только такой файл загружается целиком, он удаляется из кэша.

Представим, будто мы качаем из Интернета большой архивный файл, допустим, под именем bigsize.rar. Что же происходит во время загрузки? Браузер качает исходный файл небольшими блоками и сохраняет (дописывая в конец файла блок за блоком) недогруженный файл в кэше под именем bigsize[x].rar, где x - некоторое число. Правильнее будет сказать, что в папку временных файлов вложено несколько папок с неудобоваримыми названиями вида qmpr7k9g, 4lyj0p6b и так далее. В одной из этих папок и сохраняется сгружаемый файл. Получив последний блок, браузер закрывает файл и переносит его (возвратив файлу настоящее имя) из папки временных файлов в ту папку, куда вы перед началом загрузки указали сохранить файл. Так происходит в случае успешной загрузки.

А что же происходит при неудачной загрузке? Здесь многое зависит от того, как была прервана загрузка. То ли вы сами нажали кнопку Отмена, то ли оборвалось интернет-соединение, то ли еще что-то случилось. Во всяком случае файл bigsize[x].rar останется в папке временных файлов, просто он может оказаться незакрытым, из-за чего его размер как будто бы равен нулю. В последнем случае придется перезагрузить компьютер, чтобы файл стал закрытым и отображался проводником со своим истинным размером. Кстати, если файл представляет особую ценность для вас, предпочтительно перед дозагрузкой перезагрузить компьютер в любом случае, ведь стабильное соединение итак уже потеряно. Как правило, перезагрузка компьютера почти всегда гарантирует восстановление дозагрузки файла, а вот в случае незакрытых файлов браузер без зазрения совести может начать загрузку с самого начала.

Предположим, вы перезагрузились. Подключайтесь к Интернету, заходите на сайт сервера и жмите ссылку на выгрузку файла. internet explorer "увидит", что в его кэше остался кусок того файла, и подхватит загрузку с прерванного места. Однако существует некоторый нюанс. Поскольку браузер ведет собственную историю подключений, он может использовать вложенные в кэш другие папки по своему усмотрению. То есть при загрузке больших файлов вы начинаете загрузку сегодня, но после обрыва соединения и перезагрузки компьютера прошлое "сегодня" может попасть под определение "вчера", особенно когда вы начинали загрузку сегодня поздним вечером, а обрыв происходит завтра в ночи. А это значит, что если браузер вдруг надумает назавтра использовать под кэш другую папку, то не найдет там куска недогруженного файла. И уж коль вам ну непременно нужно докачать злополучный файл, тогда сразу после перезагрузки компьютера в проводнике скопируйте оборванный файл (в нашем примере это был bigsize[x].rar) во все папки внутри папки временных файлов. Тогда браузер сможет восстановить дозагрузку файла хоть через неделю после обрыва.

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

На главную
Комментарии
Войти
Регистрация