Максимальный размер загружаемых файлов. Настройка для экземпляра ПО
Введение
Здесь представлены инструкции по настройке максимально допустимого размера загружаемых файлов для экземпляра ПО Comindware Platform.
К загружаемым файлам относятся документы и изображения, прикреплённые к атрибутам типов «Документ», «Изображение» и «Чертёж», изображения загруженные на страницах «Темы» и «Дизайн страниц входа и регистрации», а также изображения аккаунтов.
Расположение загруженных файлов
По умолчанию файлы, загружаемые конечными пользователями и формируемые автоматически, хранятся в следующем каталоге:
/var/lib/comindware/<instanceName>/Streams— LinuxC:\ProgramData\Comindware\Instances\<instanceName>\Streams— Windows
/var/lib/comindware/<instanceName>/Streams
C:\ProgramData\Comindware\ Instances\<instanceName>\Streams
Здесь и далее <instanceName> — имя экземпляра ПО.
Подробные сведения о расположении загружаемых файлов см. в статье «Пути и содержимое папок экземпляра ПО».
Настройка лимита на объем загружаемых файлов
При развёртывании экземпляра ПО в конфигурации экземпляра ПО и конфигурации сервера NGINX по умолчанию устанавливается максимальный размер передаваемых данных в форме.
Логика работы лимита
- В файле конфигурации
Web.config(в Linux и Windows) задаются два лимита:httpRuntime maxRequestLength— максимальный размер запроса для .NET;requestLimits maxAllowedContentLength— максимальный размер запроса для сервера IIS.
- В файле конфигурации NGINX (в Linux) задаётся лимит
client_max_body_size— максимальный размер запроса. - Применяется меньший из трёх лимитов.
- Если, например, установлен лимит в 300 МБ:
- На форме имеется три поля типа «Документ» и несколько полей любых типов.
- К каждому полю типа «Документ» можно прикрепить файл объёмом 99 МБ (то есть три файла суммарным размером 297 МБ) и ввести в другие поля формы ещё 3 МБ данных.
- Можно прикрепить к одному полю типа «Документ» файл объёмом 299 МБ и ввести в другие поля формы ещё 1 МБ данных.
- Можно прикрепить к одному полю типа «Документ» файл объёмом 300 МБ.
- Нельзя прикрепить к полям типа «Документ» три файла по 110 МБ.
- На форме имеется три поля типа «Документ» и несколько полей любых типов.
Изменение лимита в Linux
Для изменения лимита на размер загружаемых файлов в ОС Linux необходимо отредактировать конфигурацию экземпляра ПО, а также конфигурацию NGINX.
-
Перейдите в режим суперпользователя
root:sudo -sили
su - -
Откройте для редактирования файл
/var/www/comindware<instanceName>/Web.config:sudo nano /var/www/comindware<instanceName>/Web.config -
Установите лимит (например, 1 ГБ) с помощью директив
httpRuntime maxRequestLength(в килобайтах) иrequestLimits maxAllowedContentLength(в байтах):<httpRuntime maxRequestLength="1048576" maxUrlLength="4096" requestValidationMode="2.0" shutdownTimeout="300" executionTimeout="3000" targetFramework="4.8" enableVersionHeader="false" />...<requestLimits maxAllowedContentLength="1073741824" /> -
Откройте для редактирования файл
/etc/nginx/sites-available/comindware<instanceName>:sudo nano /etc/nginx/sites-available/comindware<instanceName> -
Откройте для редактирования файл
/etc/nginx/sites-available/comindware<instanceName>:sudo nano /etc/nginx/sites-available/comindware<instanceName> -
Установите лимит в мегабайтах с помощью директивы
client_max_body_size:client_max_body_size 1024m; -
Перезагрузите экземпляр ПО и NGINX:
systemctl restart nginxsystemctl restart comindware<instanceName>
Изменение лимита в Windows
Для изменения лимита на размер загружаемых файлов в ОС Windows необходимо отредактировать конфигурацию экземпляра ПО.
- Откройте для редактирования файл
C:\ProgramData\Comindware\Instances\<instanceName>\Config\Web.config. -
Установите лимит (например, 1 ГБ) с помощью директив
httpRuntime maxRequestLength(в килобайтах) иrequestLimits maxAllowedContentLength(в байтах):<httpRuntime maxRequestLength="1048576" maxUrlLength="4096" requestValidationMode="2.0"
shutdownTimeout="300" executionTimeout="3000" targetFramework="4.8" enableVersionHeader="false" />...<requestLimits maxAllowedContentLength="1073741824" /> -
Перезагрузите экземпляр ПО с помощью Утилиты администрирования (либо с помощью Диспетчера служб IIS перезагрузите сервер приложений и сайт экземпляра ПО).
Эта статья была полезна 1 чел.