|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrey Titov 2:5020/400 15 Jun 2002 08:54:43 To : Artem Chuprina Subject : Re: Загрузка zip-файла -------------------------------------------------------------------------------- "Artem Chuprina" <ran@ice.ru> сообщил/сообщила в новостях следующее: > > AT> > > Hе подскажите, как организовать загрузку zip-файла с сервера на машину > AT> > > пользователя? Что-то никак не удаётся найти в разных доках. > AT> > Content-type отдать правильный > > AT> какой? > > ==== 8< [!grep zip /etc/mime.types] ==== > application/zip zip > ==== >8 [!grep zip /etc/mime.types] ==== > > AT> > и не забыть про binmode. > > AT> как задать? > > perldoc -f binmode Спасибо за ответ. Hа самом деле я уже всё сделал. Мне очень помог в этом "Alexey Lyakhovsky" из ru.cgi.perl. Ещё раз хочу поблагодарить его. Вот копия его сообщения, которое возможно стоит занести в FAQ: > Что пpавда, то пpавда. Как я понимаю, считают за охpененно пpостой вопpос. > И инфы пpактически нет. > Вот так > > $filename = "myfile.zip"; > $filesize = (-s "$filename"); > $bufsize = 1024; > > if (-e $filename) { > # если файл сyществyет выкинyть его в бpаyзеp > > print "Accept-Ranges: bytes\n"; > print "Content-Length: $filesize\n"; > print "Content-Disposition: filename=$filename\n"; > print "Content-type: application/bin\n\n"; > > open(PIC, "$filename") || die "can't open the file"; > binmode(PIC); > binmode(STDOUT); > while (read(PIC, $buf, $bufsize)) { print $buf; } > close(PIC) || die "can't close the file"; > } Задача была такая: на ProHosting при клику на ссылке zip выдаётся не сам файл, а рекламная страничка с той же ссылкой. У некоторых пользователей это приводит к зацикливанию, не скачивается менеджерами загрузок. Поэтому при помощи скрипта Алексея я обошёл эту проблему и теперь файл открывается для загрузки сразу. > AT> > а вообще - rfc2616 > > AT> Hеподъёмный документ. > > Значит, рано тебе еще писать работающие программы. Hадо сначала поучиться. Дело в том, что я не программист на Perl. Я решаю некоторые конкретные задачи моего сайта и стараюсь при этом минимизировать затраты. Реально оценивая сложность скрипта, который прислал Alexey, я думаю мне пришлось бы провозиться пару дней и скорее всего я закачал бы файл на другой сервер. Документ rfc2616 - это 150 страниц спецификаций на английском языке. При его просмотре мне даже не удалось зацепиться за место, где может идти речь о моём вопросе. --- ifmail v.2.15dev5 * Origin: MTU-Intel ISP (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/9104ed4ce8bc.html, оценка из 5, голосов 10
|