Как увеличить лимит на размер загружаемых на сервер файлов в IIS7 в windows server 2008R2
По умолчанию лимит на файл, который можно загрузить на сервер по HTTP составляет 30000000 байт, что несколько меньше, чем 30Мб. В случаях, когда необходимо загружать большие файлы, например, видео, такое лимит недостаточен и его нужно увеличить. Сделать это можно одним из приведенных ниже способов.
В примерах ниже увеличиваем лимит до 100Мб. Кстати, для загрузки больших файлов рекомендую использовать контрол на Silverlight, например тот, который разработали в Mail.ru.
- ✅Способ 1. В II7 Manager выбрать сайт, для которого нужно увеличить лимиты, затем открыть (Фильтры запросов)Request Filtering,
На правой панели выбрать "(Изменить параметры) Edit Features" и затем изменить максимально допустимый размер принимаемого контента.
В окне "Изменение параметров фильтрации запросов" укажите нужный вам размер.
- ✅Способ 2. Добавить в web.config файл в корневой директории веб-сайта следующие строки (секция system.webServer):
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
- ✅Способ 3. Выполнить из командной строки следующую команды:
cd c:\Windows\System32\inetsrv
appcmd set config "Default Web Site" -section:requestFiltering -requestLimits.maxAllowedContentLength:104857600 -commitpath:apphost
- ✅Четвертый метод, это использование PowerShell.
# Устанавливаем путь к конфигурационному файлу IIS
$configPath = "IIS:\Sites\Default Web Site"
# Устанавливаем новый лимит размера загружаемых файлов (в байтах)
$newMaxRequestLength = 104857600 # Например, 100 МБ
# Устанавливаем новый лимит времени ожидания загрузки (в секундах)
$newExecutionTimeout = 3600 # Например, 1 час
# Устанавливаем новые значения в конфигурации IIS
Set-WebConfigurationProperty -pspath $configPath -filter "system.web/httpRuntime" -name "maxRequestLength" -value $newMaxRequestLength
Set-WebConfigurationProperty -pspath $configPath -filter "system.web/httpRuntime" -name "executionTimeout" -value $newExecutionTimeout
# Перезагружаем пул приложений для применения изменений
Restart-WebAppPool -Name "DefaultAppPool"
На этом у меня все. М разобрали четыре метода позволяющих вам точно задавать размер загружаемых файлов на IIS. С вами был Иван Сёмин, автор и создатель IT портала Pyatilistnik.org.
Добрый день
Правильным будет задать значения этой командой:
appcmd set config /section:requestfiltering /requestlimits.maxallowedcontentlength:30000000