Перейти к содержимому
Русский язык для Invision Community 5

Проблема с отображением zip файлов в аттаче

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

 

<IfModule mod_charset.c>

CharsetRecodeMultipartForms off

</IfModule>

 

Теперь вроде бы идет загрузка файлов в zip архиве, только размер вдвое уменьшен и при открытие скачанного файла выдает ошибку.

 

Вот такой вот каламбур, если кто поймет в чем трабла, помогите пожалуйста

Рекомендованные сообщения

Битые файлы

Посмотрите, может еще какое-то решение есть.

  • Автор

Фисана, я уже смотрел там, по поводу моей проблемы ничего не нашел.

Весь разговор о битых картинках, а не об архивах. С картинками у меня проблем нет, только с zip файлами.

Изменено пользователем Тимур

Дождитесь ответа программистов.

  • Автор

заметил, что создание файла .htaccess нисколько не помогло. Через мозиллу открываются по прежнему кодировка какая-то, качает столько же, сколько и весит сам файл, а ИЕ качает зип файл уменьшенный в два раза и открывает его с ошибкой. Пробовал переименовать в директории аплоад формат ipb на родной zip, но в этом случае форум выдает ошибку, что файла не существует...

Насколько я помню - это нормально. Все НЕкартинки имеют расширение ipb. Что не мешает отдавать правильный файл через attach.

 

Сначала они выскакивали как битые, каракатицы в новой странице

 

Это наверное браузер Опера.. Если дождаться загрузки такой "каракатицы", а потом сделать "Сохранить как", то получим нормальный файл.

  • Автор

а нельзя не ждать этой каракатицы, а сразу качать весь архив? И в ИЕ идет сразу загрузка, только файл не целиком качается

В опере ничего не сделать вроде. Особенность браузера.

А вот почему в IE не целиком, надо разбираться.

А менеджерами загрузки пробовали качать?

  • Автор

Я оперой не пользуюсь, у меня лисичка (Файрфокс 3,0,5)

Если файл не до конца закачивается или не полностью отдается - это проблема сервера. Какой-нибудь лимит мешает.

 

Если бы проблема была на стороне скрипта, то он писал бы ошибки.

  • Автор

Все лимиты настроены в файле .htaccess

php_value "upload_max_filesize" "15M"

php_value "post_max_size" "15M"

php_value "memory_limit" "32M"

 

<IfModule mod_charset.c>

CharsetRecodeMultipartForms off

</IfModule>

 

Может что-то не правильно написал... Но все равно проблема остается. Качается только 204КБ.

Изменено пользователем Тимур

  • Автор

Протестил кое-что, после того как написали, что это мой хост не поддерживает выкачку. Переименовал файл из .ipb в родной .zip. Зашел по прямой ссылке, качает его полностью, без ошибок и открывает. Проблем нет. Закачал на форум для теста фотку того же размера что и архив, качает её тоже полностью с самого форума. А вот зип архив сам качать с форума не хочет. Может все таки вся проблема именно в .ipb формате? Нельзя, чтобы он не переименовывал его и качал как загрузил?

Нельзя, чтобы он не переименовывал его и качал как загрузил?

 

Если в глубокой теории:

/sources/classes/attach/class_attach.php

 

Найти и убрать:

$upload->force_data_ext   = 'ipb';

 

По идее, должно сработать. Последствия правда сложно предсказать. Работа с аттачами в ipb не очень стабильно сделана. При отклонениях от идеальных условий может дико глючить.

  • Автор

сделал, загружается в своем формате, но в сообщении нет ссылки за сам файл.

  • Автор

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

Спасибо большое за помощь. Можно сказать проблема решена. А какие могут быть последствия без "$upload->force_data_ext = 'ipb';"?

Из очевидного: если разрешена загрузка php-файлов в качестве аттачей -> это открытая дорога для шеллов. Нужно очень внимательно смотреть, какие файлы разрешены к закачке. И обязательно в uploads закинуть htaccess с запрещением исполнения скриптов.

 

Из неочевидного: конвертирование в более старшие версии может отвалиться. Может и не отвалиться.. Что угодно может быть.) Я не помню наизусть 4 тысячи строк кода. ^__^

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.