Solucionando o erro upload_max_filesize (resolvido)

Este erro é bastante comum no PHP. Dessa forma, o erro The uploaded file exceeds the upload_max_filesize significa que você está tentando enviar um arquivo para o servidor, porém este arquivo possui um tamanho superior ao limite, estabelecido pela diretiva  upload_max_filesize no PHP.INI.

Por exemplo, a mensagem de erro completa normalmente é

Error: The uploaded file exceeds the upload_max_filesize directive in php.ini.

Sendo assim, para solucionar o problema basta aumentar as diretivas upload_max_filesize e post_max_size na configuração do PHP. Em um servidor de hospedagem compartilhada, as configurações do PHP podem ser editadas pelo painel de controle cPanel. É possível alterar a versão do PHP, instalar módulos e extensões livremente.

Neste artigo, vamos explicar de forma fácil as soluções para o problema.

Solucionando o erro Error: The uploaded file exceeds the upload_max_filesize directive in php.ini.

Primeiramente, acesse o painel de controle, e clique na opção Select PHP Version.

alterar versao do php no cpanel 1

Em seguida, clique em Switch to PHP Options.

cpanel switch to php options

Através desta tela, você poderá configurar os parâmetros do PHP no servidor , equivalente a edição do arquivo PHP.INI .

Após isso, localize a opção post_max_size e clique sobre o valor atual. Neste exemplo, vamos clicar sobre 8M.

post_max_size1

Em seguida, aparecerão novas opções de tamanho para o post_max_size.

Selecione o tamanho desejado, e clique em Aplicar.

post_max_size

Em seguida, faça o mesmo com o upload_max_filesize . Clique sobre o valor atual, e irão aparecer novas opções.

Escolha o tamanho desejado e clique em Aplicar.

upload_max_filesize

Ao término das configurações, clique em Salvar.
upload_max_filesize 2

Pronto! O erro estará solucionado!

Entenda mais sobre o erro upload_max_filesize

O erro “upload_max_filesize” ocorre quando você está tentando enviar um arquivo para o seu site e ele excede o tamanho máximo permitido definido na configuração do PHP. Esse limite é definido no arquivo de configuração “php.ini” do servidor.

Existem alguns motivos comuns pelos quais você pode encontrar esse erro:

  1. Valor definido no php.ini: O limite de tamanho de upload é definido pelo valor da diretiva “upload_max_filesize” no arquivo “php.ini”. Se o arquivo que você está tentando enviar exceder esse valor, ocorrerá o erro. Você precisará aumentar esse limite no arquivo de configuração para permitir o upload do arquivo desejado.
  2. Valor definido no .htaccess: Às vezes, as configurações do PHP também podem ser especificadas no arquivo .htaccess do seu site. Se houver uma diretiva “php_value upload_max_filesize” definida no .htaccess com um valor inferior ao que você está tentando fazer upload, o erro ocorrerá. Você precisará ajustar esse valor para permitir o upload do arquivo.
  3. Configuração do servidor: Alguns provedores de hospedagem podem ter limites de tamanho de upload definidos em nível de servidor que não podem ser alterados pelos usuários. Nesse caso, você precisará entrar em contato com o suporte técnico do seu provedor de hospedagem e solicitar que eles aumentem o limite para você.
  4. Limitações de memória: O tamanho máximo de upload também pode ser afetado pela quantidade de memória disponível no servidor. Se o arquivo que você está tentando enviar for muito grande em relação à memória disponível, pode ocorrer o erro. Nesse caso, além de aumentar o limite de tamanho de upload, pode ser necessário ajustar a diretiva “memory_limit” no arquivo “php.ini”.

Em resumo, o erro “upload_max_filesize” geralmente ocorre quando o tamanho do arquivo que você está tentando enviar excede o limite definido nas configurações do PHP. Verifique as configurações do arquivo “php.ini” ou “htaccess” e entre em contato com o suporte técnico do seu provedor de hospedagem, se necessário, para ajustar o limite e permitir o upload do arquivo desejado.

Quais linguagens de programação são afetadas pelo erro upload_max_filesize

O erro “upload_max_filesize” está relacionado às configurações do PHP, que é uma linguagem de programação amplamente utilizada para desenvolvimento web. Portanto, o erro pode ocorrer em sites e aplicativos web que usam PHP como linguagem de backend.

O erro não está diretamente relacionado a outras linguagens de programação, como JavaScript, HTML ou CSS, que são usadas principalmente no lado do cliente para criar a interface e a interatividade do site. No entanto, essas linguagens podem ser usadas em conjunto com o PHP para manipular e exibir o erro, fornecendo uma experiência mais amigável ao usuário.

Em resumo, o erro “upload_max_filesize” está relacionado às configurações do PHP e ocorre em sites e aplicativos web que usam PHP como linguagem de backend para o gerenciamento de uploads de arquivos.

Como solucionar o erro “upload_max_filesize” pelo prompt de comandos

Se você não tem acesso a um painel de controle em sua hospedagem e deseja corrigir o erro “upload_max_filesize” por acesso via SSH, você pode seguir as etapas a seguir:

  1. Conecte-se ao seu servidor via SSH usando um cliente SSH, como o PuTTY (Windows) ou o Terminal (Mac/Linux).
  2. Navegue até o diretório onde o arquivo de configuração do PHP, geralmente chamado de “php.ini”, está localizado. Dependendo da distribuição do seu sistema operacional, o arquivo pode estar em diferentes locais, como “/etc/php.ini” ou “/etc/php/<versão>/php.ini”. Você pode usar o comando “find” para localizar o arquivo caso não tenha certeza.
  3. Abra o arquivo “php.ini” usando um editor de texto, como o nano ou o vi. Por exemplo: sudo nano /etc/php.ini.
  4. Localize a diretiva “upload_max_filesize” no arquivo. Geralmente, está definida com um valor numérico seguido de “M” para megabytes. Por exemplo: upload_max_filesize = 20M. Esse valor define o tamanho máximo permitido para uploads de arquivos.
  5. Altere o valor da diretiva “upload_max_filesize” para o tamanho desejado. Por exemplo, se você deseja permitir uploads de arquivos de até 100 megabytes, você pode definir: upload_max_filesize = 100M.
  6. Salve as alterações e feche o arquivo.
  7. Reinicie o servidor web para que as alterações entrem em vigor. Você pode fazer isso usando o comando apropriado para o seu servidor web, como sudo systemctl restart apache2 para o Apache.

Após seguir essas etapas, o limite de tamanho de upload definido no arquivo “php.ini” deve ser atualizado e o erro “upload_max_filesize” não deverá mais ocorrer. Verifique novamente o processo de upload para confirmar se o problema foi resolvido.

Lembre-se de que fazer alterações no arquivo de configuração do PHP requer privilégios de superusuário. Portanto, você pode precisar adicionar sudo antes dos comandos para obter as permissões necessárias.

Entenda o que significa o parametro post_max_size do PHP

O parâmetro “post_max_size” é uma diretiva de configuração do PHP que determina o tamanho máximo dos dados que podem ser enviados via método POST em uma solicitação HTTP. Isso inclui o tamanho dos dados de um formulário HTML enviado pelo usuário, como campos de entrada de texto, arquivos enviados e outros dados enviados via POST.

Quando um formulário é enviado por meio do método POST em um site ou aplicativo web, os dados são enviados ao servidor. O parâmetro “post_max_size” define o limite máximo de tamanho desses dados que o PHP pode receber e processar. Se os dados enviados excederem esse limite, o PHP pode retornar erros ou não processar corretamente a solicitação.

O valor do parâmetro “post_max_size” é especificado no arquivo de configuração do PHP, geralmente chamado de “php.ini”. O valor padrão pode variar dependendo da configuração do PHP e do servidor.

É importante definir um valor adequado para o “post_max_size” para acomodar os dados enviados pelos usuários de forma consistente com os requisitos do seu site ou aplicativo. Se você permitir o upload de arquivos grandes, por exemplo, precisará ajustar o valor para que seja maior do que o tamanho desses arquivos.

Além disso, é necessário levar em consideração o valor do parâmetro “upload_max_filesize” (também configurado no php.ini), pois ele deve ser igual ou maior que o “post_max_size”. Isso garante que o tamanho máximo de upload de arquivos seja compatível com o tamanho máximo de dados enviados via método POST.

Ao fazer alterações no valor do “post_max_size” no arquivo php.ini, lembre-se de reiniciar o servidor web para que as alterações entrem em vigor.

Este artigo foi útil?

Obrigado pela resposta!
Picture of Gustavo Gallas

Gustavo Gallas

Analista de sistemas, formado pela PUC-Rio. Programador, gestor de redes e diretor da empresa Homehost. Pai do Bóris, seu pet de estimação. Gosta de rock'n'roll, cerveja artesanal e de escrever sobre assuntos técnicos.

Contato: gustavo.blog@homehost.com.br

Ganhe 30% OFF

Indique seu nome e e-mail,e ganhe um cupom de desconto de 30% para sempre na Homehost!