Skip to content

5 maneiras de aumentar o limite de upload do WordPress

Categoria:WordPress
Este artigo está disponível atualmente apenas em japonês. As versões traduzidas serão publicadas sequencialmente.

Você já encontrou um erro 「excedeu o limite」 ao tentar fazer upload de arquivos de mídia no WordPress? O limite de upload padrão do WordPress varia dependendo do ambiente do servidor, mas na maioria dos casos é definido entre 2MB e 64MB. Este artigo explora 5 maneiras de aumentar o limite de upload com exemplos de código.

<strong>Atenção:</strong> Sempre faça backup antes de alterar as configurações. Além disso, alguns métodos podem não estar disponíveis em hospedagem compartilhada.

Limite efetivo = valor mínimo de cada camada nginx client_max_body_size e.g. 64m php.ini post_max_size e.g. 64M php.ini upload_max_filesize e.g. 32M WP_MEMORY_LIMIT (wp-config) e.g. 256M → Limite efetivo de 32 MB (valor mínimo)
Figura: Hierarquia de configurações que determinam o limite de upload do WordPress

Verificar o limite atual

Primeiro, vamos verificar as configurações atuais. Na página 「Mídia」→「Adicionar novo arquivo de mídia」 do painel de administração do WordPress, o limite de upload atual é exibido. Além disso, você também pode verificar os valores de <code>upload_max_filesize</code> e <code>post_max_size</code> na seção 「Ferramentas」→「Integridade do site」→「Informações」→「Servidor」.

Método 1: Configurar em <code>wp-config.php</code>

É o método mais conveniente. Adicione a linha a seguir ao arquivo <code>wp-config.php</code> no diretório raiz do WordPress.

// wp-config.php に追加(「編集が必要なのはここまでです」の行の上に記述)
@ini_set('upload_max_filesize', '64M');
@ini_set('post_max_size', '64M');
@ini_set('max_execution_time', '300');
@ini_set('max_input_time', '300');

Como esse método usa <code>ini_set()</code> do PHP, pode não ser refletido dependendo da configuração do servidor. Em particular, não tem efeito em ambientes onde esses valores são fixados em <code>php.ini</code>.

Método 2: Configurar em <code>.htaccess</code>

Se você estiver usando um servidor Apache, pode substituir as configurações PHP no arquivo <code>.htaccess</code>. Adicione o seguinte ao arquivo <code>.htaccess</code> no diretório raiz do WordPress.

# .htaccess に追加
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300
php_value memory_limit 256M

No caso de servidores Nginx, <code>.htaccess</code> não pode ser usado, portanto é necessário configurar o arquivo de configuração do servidor.

# Nginx の設定(/etc/nginx/conf.d/ 配下)
client_max_body_size 64m;

Método 3: Configurar em <code>php.ini</code>

Se você puder editar diretamente o arquivo de configuração PHP do servidor, é o método mais confiável. Escreva o seguinte em <code>php.ini</code> (ou <code>.user.ini</code>).

; php.ini に追記
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
max_input_time = 300
memory_limit = 256M

Em hospedagem compartilhada, às vezes não é possível editar <code>php.ini</code> diretamente. Nesse caso, você pode criar <code>.user.ini</code> no diretório raiz do WordPress e descrever o mesmo conteúdo para que seja refletido.

<strong>Ponto importante:</strong> defina <code>post_max_size</code> com um valor maior que <code>upload_max_filesize</code>. <code>post_max_size</code> é o limite para o conjunto completo de dados do formulário, incluindo campos de formulário e overhead além do corpo do arquivo.

Método 4: Configurar em <code>functions.php</code>

Este é um método para adicionar um filtro ao <code>functions.php</code> do tema. Como as configurações são perdidas quando o tema é atualizado, recomenda-se a implementação em um subtema ou plugin personalizado.

// functions.php または カスタムプラグインに追加
@ini_set('upload_max_filesize', '64M');
@ini_set('post_max_size', '64M');

// WordPress のアップロードサイズフィルター
add_filter('upload_size_limit', function($size) {
    return 64 * 1024 * 1024; // 64 MiB
});

// マルチサイトの場合
add_filter('upload_size_limit', function($size) {
    return 64 * 1024 * 1024;
}, 20);

Método 5: Configurar no painel de hospedagem

Em muitos servidores de aluguel e serviços de hospedagem, você pode alterar as configurações de <code>PHP</code> através do painel de controle (<code>cPanel</code>, <code>Plesk</code>, <code>ConoHa</code>, <code>Xserver</code>, etc.).

  1. Fazer login no painel de administração de hospedagem
  2. Procure o menu de configuração do PHP ou php.ini
  3. Alterando os valores de <code>upload_max_filesize</code> e <code>post_max_size</code>
  4. Salve a configuração e reinicie o PHP conforme necessário

Esse método é o mais confiável, pois a configuração é aplicada no nível do servidor, então não há risco de ser substituída por outros métodos.

Pontos de verificação quando a configuração não é aplicada

  • O servidor web (Apache/Nginx) foi reiniciado?
  • Se você está usando PHP-FPM, reiniciou também o PHP-FPM?
  • CDN ou proxy reverso não estão limitando o tamanho das solicitações
  • No WordPress multissites, as configurações da tela de administração de rede podem ter prioridade
  • <code>post_max_size</code> é maior ou igual a <code>upload_max_filesize</code>

Teste após alteração de configuração

Após alterar o limite de upload, teste sempre com arquivos reais. O DevLab fornece arquivos de teste em vários tamanhos.

  • <a href="/ja/reference/wordpress-upload-limit/">Referência de Limite de Upload do WordPress</a> — Lista de limites padrão em cada ambiente de hospedagem
  • <a href="/ja/files/threshold/">Arquivos para teste de valor limite</a> — Teste com tamanho exatamente no limite máximo
  • <a href="/ja/files/images/">Arquivo de teste de imagem</a> — Verificação em upload de mídia real

Resumo

Existem várias maneiras de aumentar o limite de upload do WordPress, mas o método disponível varia dependendo do ambiente do servidor. Primeiro, tente configurar no painel de hospedagem e, se isso não funcionar, use <code>.htaccess</code> ou <code>php.ini</code>. Após alterar as configurações, use o arquivo de teste do DevLab para confirmar que o upload foi bem-sucedido.

Arquivo de teste disponível para usar neste artigo

  • → <a href="/ja/files/threshold/" class="text-primary-600 dark:text-primary-400 hover:underline">Lista de arquivos de teste de limite (9.9MB / 10MB / 10.1MB)</a>
  • → <a href="/ja/files/images/jpg/" class="text-primary-600 dark:text-primary-400 hover:underline">Lista de arquivos de teste de imagem JPEG</a>

Artigos relacionados

  • → <a href="/ja/blog/how-to-test-upload-limit/" class="text-primary-600 dark:text-primary-400 hover:underline">Como testar corretamente o limite de upload de arquivo</a>
  • → <a href="/ja/blog/mb-vs-mib-file-size/" class="text-primary-600 dark:text-primary-400 hover:underline">MB e MiB são diferentes! As armadilhas das unidades de tamanho de arquivo</a>