Поговоримо трохи про масову завантаження…

Шановні клієнти,

Деякі наші клієнти зіткнулися з тим що неработает масова завантаження файлів на сервер, тому ми вирішили поговорити про неї окремо. Аналіз звернень показує, що непрацездатність ділиться на два типу:

1. Помилки самого користувача: неустановлени права на запис у потрібні папки скрипта, спроба завантажити файли невідповідного налаштувань типу файлів, завантаження файлів розміри яких перевищують ліміти встановлені в налаштуваннях скрипта або в налаштуваннях сервера.

2. Непрацездатність пов’язана з налаштуваннями сервера. Далеко не кожен сервер підтримує технологію яку використовує масова завантаження файлів на сервер.

Ми опустимо перший пунт, який належить до помилок користувача, і спробуємо налаштувати сервер так, щоб він став підтримувати масову завантаження. Тому перш ніж читати далі, переконайтеся що помилка не пов’язана з вами, а саме спробуйте завантажити той же файл, але використанням стандартної завантаження, якщо при стандартній завантаженні файл завантажується без проблем, то читаємо далі.

Перш за все розберемося, як працює масова завантаження файлів на сервер. Це не зовсім звичайна завантаження в тому плані, в якому ми звикли бачити завантаження на сервер, коли браузер посилає дані на ваш сервер. Завантаження файлів здійснює спеціальний флеш ролик, запущений на вашому комп’ютері, за допомогою якого ви вибираєте файли і потім цей ролик завантажує файли.

На деяких хостингах встановлений модуль Apache mod_security який займається фільтруванням вхідного POST трафіку на сервер, який відхиляє дані не надійшли з браузера, а Flash. При цьому ви можете отримувати будь-яку помилку це і 404, і 403, і 500, і Server (IO) Error, а можете просто отримувати повідомлення що всі успішно завершено, при цьому у списку не з’являються завантажені файли. Помилка залежить безпосередньо від того, як налаштований цей модуль.

Для відключення даного модуля необхідно в файл .htaccess в самий початок додати рядки:
SecFilterEngine Off
SecFilterScanPOST Off

Після цього в 90% випадків проблема з масовою завантаженням усувається. Але не завжди і не всі хостинг провайдери дозволяють відключати налаштування сервера у файлі .htaccess. Можливо що для відключення даного модуля на вашому хостингу необхідно використовувати інші директиви, тому уточніть у вашого хостер провайдера встановлений даний модуль на сервері і яким чином його можна відключити. Також іноді трафік блокують інші вбудовані брандмауери, в такому разі проблему навряд чи вдасться вирішити і знадобиться тільки зміна хостинг провайдера.

Але перед тим як прийняти рішення про зміну провайдера обов’язково повідомте про проблему, щоб ми обов’язково перевірили працездатність на вашому сервері, і гарантовано повідомили вам, що проблема в сервері, усунути скриптом яку неможливо.

Сподіваємося наш рада вирішить вашу проблему.

З повагою,
SoftNews Media Group

97