Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Почему бьются бинарные файлы при загрузке скриптом?
 
 автор: coloboc66   (14.11.2005 в 14:11)   письмо автору
 
 

Как мне это побороть, не знаю...

   
 
 автор: elenaki   (14.11.2005 в 15:04)   письмо автору
 
   для: coloboc66   (14.11.2005 в 14:11)
 

классический вопрос "почему бьются файлы при upload". Вот способ решения:

В директории, где лежит скрипт, делаем файл .htaccess, в котором пишем: CharsetDisable On. В файл httpd.conf дописать строки:

<Location />
    CharsetRecodeMultipartForms Off
</Location>

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

Директива CharsetDisable отключает модуль charset-processing module, т.е. никакой перекодировки при скачивании файлов, находящихся в данной папке, происходить не будет.

Директива CharsetRecodeMultipartForms выключает перекодировку данных, переданных методом POST с заголовком Content-Type: multipart/form-data. Т.е. двоичные данные, переданные с такой настройкой, будут оставлены в первоначальном виде, а все остальное наполнение сайта будет перекодировано согласно текущим настройкам сервера.

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

   
 
 автор: coloboc66   (14.11.2005 в 15:38)   письмо автору
 
   для: elenaki   (14.11.2005 в 15:04)
 

Мой хостер тоже рекомендует сделать .htaccess c содержанием:
CharsetRecodeMultipartForms Off и поместиь его в директорию скрипта закачки. Я так и сделал, но это не помогло. В файл httpd.conf я залезть не могу, как вы сами понимаете...
Да- у хостера стоит русский апач.

   
 
 автор: cheops   (14.11.2005 в 15:31)   письмо автору
 
   для: coloboc66   (14.11.2005 в 14:11)
 

А форма отправки файлов и её обработчик как выглядят?

   
 
 автор: coloboc66   (14.11.2005 в 15:45)   письмо автору
 
   для: cheops   (14.11.2005 в 15:31)
 

Спасибо elenaki! Про CharsetDisable On мне даже хостер ничего не сказал. Теперь все работает, кажется.

   
 
 автор: nataliaa   (15.11.2005 в 11:05)   письмо автору
 
   для: coloboc66   (14.11.2005 в 15:45)
 

А у меня после добавления htaccess вообще выдает ошибку и не допускает к форуму - может я не в те папки ставила - вот на лайт форум куда нужно поставить, чтобы фотки заработали?

У coloboc66 получилось - может можно и на моем хосте что-то сделать, чтобы работало!
Подскажите!

   
 
 автор: coloboc66   (15.11.2005 в 11:16)   письмо автору
 
   для: nataliaa   (15.11.2005 в 11:05)
 

А какое у вас содержание htaccess и в какой директории он стоит? А апач русский или нет?

   
 
 автор: multiBrain   (15.11.2005 в 11:29)   письмо автору
 
   для: coloboc66   (15.11.2005 в 11:16)
 

А как может влиять русский или нет апач на загрузку файла?

   
 
 автор: coloboc66   (15.11.2005 в 11:49)   письмо автору
 
   для: multiBrain   (15.11.2005 в 11:29)
 

Именно из-за русского апач файлы и бьются в основном, как я понял.

   
 
 автор: nataliaa   (15.11.2005 в 17:00)   письмо автору
 
   для: coloboc66   (15.11.2005 в 11:49)
 

coloboc66, Апач русский - кроме того написано вот это:

На нашем сервере в файле .htaccess разрешено использование следующих групп конфигурационных директив:
AuthConfig - включает в себя набор директив для авторизации на строне сервера;
FileInfo - включает в себя набор директив для управления типами и кодировками файлов; Indexes - включает в себя набор директив для управления индексированием каталогов;

Т.е. вышеуказанный htaccess не будет разрешен что ли!?

Директиву пробовала ставить методом тыка во все папки поочередно - результат - данная директория выходит из строя!!!
Кстати позиция должна быть все-таки off или может нужно on ?

   
 
 автор: nataliaa   (16.11.2005 в 08:28)   письмо автору
 
   для: nataliaa   (15.11.2005 в 17:00)
 

Cheops, помогите , пожалуйста, с ответом на вопрос о настройках сервера и их последствиях (мой пост выше)

   
 
 автор: coloboc66   (16.11.2005 в 09:33)   письмо автору
 
   для: nataliaa   (15.11.2005 в 17:00)
 

В общем, я особо не вникал в инструкции своего хостера, а сделал так: создал файл .htaccess со следующим содержанием:
CharsetRecodeMultipartForms off
CharsetDisable On
И поместил этот файл в ту же папку, где находится скрипт загрузки файлов. После этого все заработало.
Кстати, а файлы у вас точно бьются? Может к ним просто права доступа не заданы нужным образом?

   
 
 автор: nataliaa   (16.11.2005 в 12:27)   письмо автору
 
   для: coloboc66   (16.11.2005 в 09:33)
 

coloboc66, попробовала - директория форума моментально закрывается - убираю директиву - все работает (в смысле, форум работает, а не фотки)

Может, все дело в том, что на уровне бесплатного хоста эти директивы и не разрешают!
coloboc66, а у вас хост платный или бесплатный?
Если бесплатный, не напишете адресок - чтобы проверить форум!

Флажки доступа к файлам - выставлены все возможные!

   
 
 автор: coloboc66   (16.11.2005 в 13:46)   письмо автору
 
   для: nataliaa   (16.11.2005 в 12:27)
 

У меня бились файлы не на форуме, а на другом скрипте, с форумом я еще не пробовал. Хостинг у меня платный. Почему бы вам не спросить у своего хостера, можно ли вам устанавливать .htaccess с такими директивами? И еще- вы уверены, что файлы именно бьются, а ни не читаются по какой-нибудь другой причине?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования