Подтвердить что ты не робот

Как ограничить ограничение размера загрузки файлов на основе типа файла в .htaccess

Используя .htaccess, можно ли ограничить ограничение размера загрузки файла php на основе типа файла?

Например, максимальный предел загрузки для изображений составляет 2 МБ, а максимальный предел загрузки для PDF и DOC - 10 МБ.

4b9b3361

Ответ 1

Я бы использовал директиву LimitRequestBody. Однако, чтобы процитировать:

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

Вы можете установить это на 10 Мб, чтобы Apache отрезал любой запрос, который, безусловно, слишком велик, а затем дополнительно протестируйте и отфильтруйте в своем script. Эта директива в основном используется для предотвращения атак типа "отказ в обслуживании". Без этой директивы Apache с радостью примет весь файл до того, как он когда-либо достигнет вашего script, чтобы пользователи могли загружать файлы 100Gb, прежде чем им сообщили, что он слишком длинный.

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

Ответ 2

Вы можете изменить ограничение по размеру и разрешить типы, но я не верю, что вы можете присоединиться к ним.

Ответ 3

Один из способов защиты вашего сервера от атак DOS заключается в ограничении максимально допустимого размера для загрузки файлов. Здесь мы ограничиваем размер загрузки файлов до 10240000 байт, что эквивалентно примерно 10 мегабайтам. Для этого правила размеры файлов выражаются в байтах. Примечание: этот код полезен только в том случае, если вы действительно разрешаете пользователям загружать файлы на ваш сайт.

LimitRequestBody 10240000