5 maneiras de aumentar o limite de upload do WordPress
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.
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.).
- Fazer login no painel de administração de hospedagem
- Procure o menu de configuração do PHP ou php.ini
- Alterando os valores de <code>upload_max_filesize</code> e <code>post_max_size</code>
- 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>