Revisão técnica: 07/09/2026. Tutorial atualizado; a data original de publicação foi preservada.
Quando um envio de arquivo falha, o limite pode estar no PHP, na aplicação ou no servidor web. Aumentar apenas um valor não resolve todos os casos. Primeiro, registre o tamanho do arquivo e a mensagem apresentada.
Entenda os limites envolvidos
upload_max_filesize: tamanho máximo de cada arquivo recebido pelo PHP.post_max_size: tamanho máximo do corpo da requisição POST, incluindo arquivos e demais campos. Deve comportar o conjunto enviado e a sobrecarga do formulário.memory_limit: memória disponível para o script. Um erro de memória esgotada exige investigar o processamento; não comprova que o limite de upload foi atingido.
O CMS pode impor um limite próprio. Proxy, servidor web, espaço em disco e diretório temporário também podem interromper o envio. Uma resposta HTTP 413 indica rejeição pelo tamanho da requisição, mas é necessário identificar qual camada a produziu.
Ajuste a configuração do domínio
No cPanel, procure o MultiPHP INI Editor, se estiver disponível, e selecione o domínio correto. Um exemplo para aceitar um único arquivo de até 20 MB, com margem para o restante de um formulário pequeno, é:
upload_max_filesize = 20M
post_max_size = 24M
Esses valores são um exemplo, não uma configuração universal. Vários arquivos na mesma requisição podem exigir um total maior. Aplique somente o necessário e respeite os limites do plano. A edição do arquivo correto depende do modo de execução do PHP; copiar um php.ini para todas as pastas não é um procedimento geral.
Confira o resultado no PHP que atende ao site
Confirme os valores efetivos no diagnóstico da aplicação ou com o suporte. O PHP do terminal pode usar outra versão e outro arquivo de configuração. Se precisar consultar informações pela web, siga o procedimento de diagnóstico protegido do PHP.
Teste um arquivo permitido, depois um arquivo acima do limite, e confira se a aplicação apresenta uma mensagem compreensível. Se continuar falhando, informe ao suporte horário, domínio, tamanho e erro, sem enviar credenciais. Evite remover todos os limites: eles também controlam o consumo de recursos.
Referências: diretivas do PHP e MultiPHP INI Editor do cPanel.