Установите значение MaxAllowedContentLength / maxRequestLength для каждого действия - PullRequest
8 голосов
/ 15 февраля 2010

Как установить значение maxAllowedContentLength для каждого действия?

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

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

В IIS6 я знаю, что мы можем использовать тег <location>, чтобы указать maxRequestLength в определенном месте. Я не знаю, как использовать этот подход на IIS7, и мне не нравится этот подход, так как маршруты URL-адресов кодируются вручную в файле web.config.

Как лучше всего решить эту проблему?

Ответы [ 2 ]

1 голос
/ 24 июня 2012

Я не нашел способа достичь этого, и я не думаю, что есть. Вероятно, лучше всего использовать другой веб-сайт IIS для действий по загрузке файлов с настраиваемым web.config.

0 голосов
/ 22 июля 2010

Создайте отдельный виртуальный сайт для области, для которой требуется другая фильтрация.

Затем выполните эту команду на своем сервере IIS. (заменить [IISWebsitename])

C:\Windows\System32\inetsrv>appcmd set config "[IISWebsitename]" -section:requestFiltering -requestLimits.maxAllowedContentLength:100000000 -commitpath:apphost

Это позволяет одновременно загружать 100 000 000 байтов данных для этого одного веб-сайта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...