---
title: "Limite de upload"
description: "Todas as camadas que limitam o tamanho de upload no Signer on-premises: MaxFileSize, MaxUploadSizeInBytes, IIS, Kestrel e Nginx, e o efeito das versões dos documentos no armazenamento."
canonical: "https://docs.lacunasoftware.com/articles/signer/on-premises/limite-de-upload"
locale: "pt-BR"
product: "Signer"
last_updated: "2026-10-22"
---

# Limite de upload

Um upload passa por várias camadas antes de chegar ao Signer. Cada camada tem o seu próprio limite de tamanho. O
upload só funciona se o arquivo couber em todas elas. Por padrão, o Signer aceita arquivos de até 100 MB.

## As camadas

| Camada | Configuração | Padrão | O que acontece quando o arquivo passa do limite |
|---|---|---|---|
| Interface web | `General:MaxFileSize` | `104857600` (100 MB) | A tela mostra *Limite de tamanho atingido* antes de enviar o arquivo |
| Servidor do Signer (Kestrel ou IIS *in-process*) | `General:MaxUploadSizeInBytes` | `106954752` (102 MB) | O servidor recusa a requisição com o código de status `413` |
| IIS | `maxAllowedContentLength` no `web.config` | `1073741824` (1 GB) | O IIS recusa a requisição antes de ela chegar ao Signer |
| Proxy reverso (Nginx) | `client_max_body_size` | `1m` (1 MB), se a diretiva não existir | O Nginx recusa a requisição com o código de status `413` |

A interface web envia os arquivos maiores que `General:SegmentedUploadThresholdMB` (padrão: 10 MB) em partes. Por
isso, um proxy com limite pequeno pode funcionar na interface web e falhar nas chamadas da API, que enviam o arquivo
inteiro em uma requisição.

## Como aumentar o limite

Siga os passos para o tamanho que você quer aceitar. O exemplo usa 200 MB (`209715200` bytes).

1. Na seção `General`, defina `MaxFileSize` com o tamanho do arquivo:

   ```json
   "General": {
     "MaxFileSize": 209715200,
     "MaxUploadSizeInBytes": 210763776
   }
   ```

1. Defina `MaxUploadSizeInBytes` com pelo menos 1 MB (`1048576` bytes) a mais que `MaxFileSize`. Essa folga cobre o
   envelope da requisição *multipart* (o formato que carrega o arquivo e os outros campos do formulário).
1. Se o Signer roda no IIS e o tamanho passa de 1 GB, aumente `maxAllowedContentLength` no `web.config` da pasta do
   site. O pacote do Signer traz esse arquivo. A cada [atualização](https://docs.lacunasoftware.com/articles/signer/on-premises/windows/update), refaça a alteração.
1. Se há um Nginx na frente do Signer, defina `client_max_body_size` com o mesmo valor de `MaxUploadSizeInBytes` no
   bloco `server` do site:

   ```nginx
   client_max_body_size 201m;
   ```

   Faça o mesmo em qualquer outro proxy ou balanceador de carga entre o usuário e o Signer.
1. Reinicie o Signer e recarregue o Nginx (`nginx -s reload`).

> **Aviso**
>
> Edite o arquivo JSON com um editor de texto simples. Aspas curvas (`“` e `”`), comuns em texto copiado de um e-mail ou
> documento, deixam o JSON inválido, e a aplicação não inicia.

> **Observação**
>
> Arquivos de centenas de MB usam mais memória e tempo no processamento do documento. Teste o tamanho que você
> quer aceitar em homologação antes de mudar a produção.

## Armazenamento

O Signer guarda o arquivo original e as versões que o documento ganha durante o fluxo, como as versões assinadas.
O espaço usado por um documento é maior que o tamanho do arquivo enviado. Considere isso ao aumentar o limite e ao
planejar o [Blob Storage](https://docs.lacunasoftware.com/articles/signer/on-premises/blob-storage).

## Veja também

* [Configurações do Signer](https://docs.lacunasoftware.com/articles/signer/on-premises/settings)
* [Instalação em Ubuntu Server](https://docs.lacunasoftware.com/articles/signer/on-premises/linux/install-ubuntu)
* [Setup em Windows Server](https://docs.lacunasoftware.com/articles/signer/on-premises/windows)
