Я только что обновил сайт со старого сервера win 2000 на новый 64-битный сервер win 2008.
Этот сайт принимает загрузки изображений из настольного приложения через POST XML-данных, где изображение закодировано в base64 в один из элементов xml. Страница, которая получает данные POST, называется Classic ASP.
После перехода на новый сервер можно успешно загружать только небольшие изображения.
Максимально допустимая длина содержимого установлена на 30000000 байт. Таким образом, я смогу отправить по почте чуть меньше 30 МБ.
Я не могу выполнить POST xml закодированного изображения размером около 1 МБ и выше.
Ошибка возникает при загрузке XML на стороне сервера (это происходит с использованием библиотеки DLL VB).
На старом сервере win 2000 никогда не было проблем с большими размерами файлов, и этот код не изменился.
Я получаю следующую ошибку:
Неизвестная ошибка
Код ошибки: -2147467259
Расположение файла: 262165
Строка: 3541
Линия позиции: 56
Исходный текст: cvr92x0lnpkUw / 0gfuvKqXTYYptY8 + 3q74Jhls7eSfHnfunql4J026mu
URL:
Похоже, что POST обрезается где-то в середине XML.
Любые идеи о том, что выделять помимо максимально допустимой длины содержимого в IIS - я устанавливаю это для сайта в IIS в разделе «Фильтрация запросов».
IIS7 имеет ограничение на загрузку по умолчанию 28,61 МБ. Вы должны открыть этот файл:
C:\Windows\System32\inetsrv\config\applicationHost.config
в <requestFiltering>
в разделе вы добавляете следующее:
<requestLimits maxAllowedContentLength=”[length in bytes]” />
Для 100 МБ вы можете установить, например, 104857600.
Ошибка POST возникает мгновенно или по прошествии определенного времени? Я думаю, вам нужно добавить «maxRequestLength», попробуйте добавить это в «system.web» в вашем web.config -
<system.web><httpRuntime executionTimeout="999999" maxRequestLength="2097151"
Возможно, проблема с вашей конфигурацией IIS все еще не изменена, чтобы разрешить большие полезные данные;) Проверьте все соответствующие настройки в web.config.