Skip to content

Tudo para WordPress, desenvolvimento web — e não só

🔍 Onde está localizado o php.ini no WordPress: encontrar e configurar definições

🔍 Onde está localizado o php.ini no WordPress: encontrar e configurar definições

Plugin não instala, o upload do tema é interrompido a meio? O painel de administração mostra «Allowed memory size exhausted»? Na maioria das vezes, a culpa é de um único ficheiro: o php.ini.

Este é o ficheiro de configuração principal do PHP: define quanta memória alocar aos scripts, durante quanto tempo os executar e que tamanhos de ficheiro aceitar. Nos alojamentos típicos, estes limites são definidos em baixo, o fornecedor poupa recursos.

Abaixo, onde encontrar o php.ini em qualquer ambiente (WAMP, XAMPP, Linux, cPanel) e quais as cinco diretivas a editar para o WordPress em 2026. Com números específicos, sem suposições.

💡 Visão geral rápida:

  • Crie um ficheiro PHP de teste com a função phpinfo e veja imediatamente o caminho para o php.ini em qualquer servidor
  • No WAMP, XAMPP e cPanel, o caminho está disponível através da interface, sem necessidade de editar código
  • Configurações chave para o WordPress: memory_limit, max_execution_time, upload_max_filesize, post_max_size e max_input_vars
  • Após as alterações, verifique os limites reais via phpinfo() ou WP-CLI para garantir que o alojamento não ignorou as modificações

O que é o php.ini e porquê mexer-lhe

O php.ini é um ficheiro de texto com diretivas que controlam o comportamento do PHP no servidor. É carregado a cada início de processo PHP e define limites: memória, tempo de execução, tamanho de ficheiro de upload, nível de erro.

Para o WordPress, cinco diretivas são críticas. O memory_limit aloca RAM para o processamento de páginas; temas e construtores modernos (Gutenberg, Elementor) exigem facilmente 256 MB ou mais. O max_execution_time limita os segundos de execução do script: se um plugin importar conteúdo de demonstração ou o WooCommerce gerar relatórios, os 30 segundos padrão garantem uma interrupção. O upload_max_filesize e o post_max_size controlam os uploads: um ZIP de tema pode pesar mais de 40 MB, e o limite do alojamento é de 2 MB. Por fim, o max_input_vars limita o número de variáveis POST; com 1000 itens de menu e um padrão de 2000, a gravação do menu é interrompida sem aviso.

Boas notícias: o php.ini pode ser editado mesmo em alojamento partilhado barato. Más notícias: primeiro é preciso encontrá-lo, e o caminho depende do sistema operativo, painel de controlo e método de instalação do PHP (módulo Apache, CGI/FastCGI, PHP-FPM).

Como encontrar o php.ini: método universal via phpinfo()

A forma mais fiável, que funciona em qualquer servidor, é criar um ficheiro PHP de teste com a função phpinfo().

Crie um ficheiro com qualquer nome e extensão .php (por exemplo, info.php) e coloque lá dentro:

1<?php phpinfo(); ?>

Envie o ficheiro para a raiz do site (via FTP, gestor de ficheiros do alojamento ou WP-CLI) e abra no navegador: https://your-site.com/info.php.

Na página aberta, encontre a linha Loaded Configuration File, este é o caminho completo para o php.ini ativo. Se o PHP correr como módulo Apache, o caminho será mostrado na linha Configuration File (php.ini) Path; neste caso, o próprio ficheiro pode não existir e precisa de ser criado manualmente.

Após verificar, elimine o info.php imediatamente, pois revela detalhes da configuração do servidor, o que não é seguro.

Onde está o php.ini no WAMP

No WAMP (ambiente Windows: Apache + MySQL + PHP), o caminho para o php.ini está disponível diretamente na bandeja do sistema.

Clique com o botão direito no ícone do WAMP, passe o rato sobre PHP e selecione php.ini; o ficheiro abrirá num editor de texto. Se o ambiente tiver várias versões do PHP, certifique-se de que selecionou aquela em que o site está a correr (visível na bandeja: WAMP → PHP → Version).

Caminho alternativo via menu do WAMP: clique com o botão esquerdo no ícone → PHPphp.ini. O ficheiro reside fisicamente em C:\wamp64\bin\php\phpX.Y.Z\php.ini (ou C:\wamp\bin\... para versões mais antigas).

Onde está o php.ini no XAMPP

Janela do painel de controlo do XAMPP com botão Config

No XAMPP em Windows e Linux, o caminho para o php.ini é através do painel de controlo. Abra o Painel de Controlo do XAMPP e clique no botão Config na linha do módulo Apache. No menu suspenso, selecione PHP (php.ini); o ficheiro abrirá no editor.

Se não houver botão Config (versão antiga do XAMPP), vá diretamente a: C:\xampp\php\php.ini no Windows ou /opt/lampp/etc/php.ini no Linux.

Após as alterações, reinicie o Apache com o botão StopStart no painel de controlo.

Onde está o php.ini no Linux (VPS / dedicado)

Num servidor Linux sem painel de controlo, o php.ini encontra-se com um comando de terminal:

1php -i | grep &quot;Loaded Configuration File&quot;

O resultado será algo como:

1Loaded Configuration File => /etc/php/8.2/cli/php.ini

Nuance importante: o PHP para linha de comandos (CLI) e para servidor web (Apache/Nginx) utiliza frequentemente ficheiros php.ini diferentes. O comando acima mostra o caminho para a versão CLI. Para encontrar o caminho para o servidor web, crie um ficheiro info.php usando o método da secção anterior e abra-o no navegador, ou execute:

1ls /etc/php/*/apache2/php.ini
2ls /etc/php/*/fpm/php.ini

As localizações típicas dependem da versão do PHP e do servidor web:

  • Apache: /etc/php/8.2/apache2/php.ini
  • PHP-FPM (Nginx): /etc/php/8.2/fpm/php.ini
  • Caminho geral (se o PHP for compilado manualmente): /usr/local/lib/php.ini

Após as alterações, reinicie o servidor web: sudo systemctl restart apache2 ou sudo systemctl restart php8.2-fpm.

Onde está o php.ini no cPanel e noutros painéis de alojamento

Gestor de ficheiros do cPanel com a pasta public_html em destaque

Em alojamentos partilhados com cPanel, o ficheiro php.ini costuma ficar no diretório raiz do site, public_html. Para o ver:

  • Inicie sessão no cPanel e abra o File Manager
  • Navegue até à pasta public_html
  • Encontre o php.ini na lista de ficheiros
Diretório raiz public_html no gestor de ficheiros do cPanel

Se o ficheiro não existir, crie-o com o botão + File. Escreva as diretivas necessárias e guarde. O servidor irá aplicar as configurações em poucos minutos.

Em servidores modernos, o MultiPHP Manager (cPanel) ou Select PHP Version são cada vez mais comuns e permitem editar o php.ini através de uma interface web, sem aceder ao gestor de ficheiros. Se o seu painel tiver uma ferramenta destas, utilize-a: há menos probabilidade de erros de sintaxe.

Caso específico: .user.ini. Em servidores com PHP-FPM (FastCGI), o php.ini na raiz do site pode ser ignorado; em vez disso, cria-se um ficheiro .user.ini com as mesmas diretivas. Consulte a documentação do alojamento para saber qual o ficheiro a usar.

Configurações recomendadas do php.ini para WordPress (atuais para 2026)

Os valores básicos "padrão" no php.ini não mudam há décadas e foram concebidos para scripts simples, não para CMS modernos. O WordPress com os plugins atuais exige limites significativamente mais altos. Abaixo estão os valores recomendados, testados na prática.

Diretivas principais

Diretiva

Mínimo

Recomendado

Porquê

memory_limit

256M

512M

Memória por página; Gutenberg, WooCommerce, Elementor consomem facilmente mais de 128 MB

max_execution_time

60

300

Segundos por script; importação de demos, geração de miniaturas, backups

upload_max_filesize

64M

128M

Tamanho de ficheiro para upload; temas e plugins em ZIP pesam frequentemente 20 a 50 MB

post_max_size

64M

128M

Tamanho total do pedido POST; deve ser ≥ upload_max_filesize

max_input_vars

2000

4000

Número de variáveis POST; afeta diretamente a gravação de menus (50+ itens = corte)

max_input_time

60

300

Segundos para analisar os dados de entrada; -1 = ilimitado

1memory_limit = 512M
2max_execution_time = 300
3upload_max_filesize = 128M
4post_max_size = 128M
5max_input_vars = 4000
6max_input_time = 300
7file_uploads = On

A diretiva safe_mode foi removida do PHP a partir da versão 5.4, não a adicione à configuração. Se vir esta linha num php.ini antigo, elimine-a sem hesitar.

Cache (opcache)

Para sites em produção, o opcache é obrigatório, pois oferece um aumento de velocidade de 2 a 3 vezes ao armazenar em cache o bytecode compilado:

1opcache.enable = 1
2opcache.memory_consumption = 256
3opcache.max_accelerated_files = 10000
4opcache.revalidate_freq = 2
5opcache.validate_timestamps = 1

Registo de erros

Num site ativo, a exibição de erros no ecrã deve estar desligada, mas o registo deve estar ligado:

1display_errors = Off
2log_errors = On
3error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

Métodos alternativos:.htaccess e wp-config.php

O acesso ao php.ini nem sempre está disponível. Em alguns alojamentos, existem alternativas.

Via.htaccess (Apache + mod_php)

Adicione ao .htaccess na raiz do site:

1php_value memory_limit 512M
2php_value upload_max_filesize 128M
3php_value post_max_size 128M
4php_value max_execution_time 300

Isto só funcionará se o PHP correr como módulo do Apache (mod_php). Com PHP-FPM, as diretivas php_value causarão um erro 500; neste caso, utilize .user.ini.

Via wp-config.php

Adicione antes da linha /* That's all, stop editing! */:

1define('WP_MEMORY_LIMIT', '512M');
2define('WP_MAX_MEMORY_LIMIT', '512M');

WP_MEMORY_LIMIT define o limite para o frontend, WP_MAX_MEMORY_LIMIT para a administração. Isto não substitui o php.ini, mas resolve frequentemente o erro "Allowed memory size exhausted" precisamente quando o acesso à configuração do servidor está restrito.

Vídeo: encontrar e editar o php.ini na prática

Vídeo curto com demonstração visual de todos os métodos descritos, desde o phpinfo() até ao MultiPHP Manager no cPanel:

⁉️🤔 Perguntas frequentes

Por que razão nada mudou depois de editar o php.ini?

O processo PHP não foi reiniciado. Reinicie o Apache (systemctl restart apache2 ou através do botão do painel), o PHP-FPM (systemctl restart phpX.Y-fpm), ou aguarde pelo reinício automático em alojamento partilhado (normalmente 2 a 5 minutos). Verifique se está a editar o php.ini exato indicado pelo phpinfo() na linha Loaded Configuration File (um servidor pode ter vários).

Após as alterações, verifique sempre o limite real através do phpinfo(): o alojamento pode substituir algumas diretivas por configurações globais. Se o valor não mudou, crie um .user.ini na raiz do site (para PHP-FPM) ou contacte o suporte.

De quanto memory_limit precisa realmente o WordPress em 2026?

256M: mínimo seguro para um site típico com 10 a 15 plugins. Se tiver um page builder instalado (Elementor, Bricks, Breakdance), WooCommerce ou um plugin de cache complexo, defina 512M. Sites em Gutenberg com muitos blocos e padrões também tendem para os 512M. Os 128M, recomendados em guias antigos, já não são suficientes para o WordPress moderno: só o núcleo com um tema de Full Site Editing pode atingir este limite.

Exceção: alojamento partilhado barato com um teto rígido. Se o alojamento não aumentar o memory_limit acima de 128M, considere mudar de plano ou de fornecedor: um site neste limite irá falhar a cada duas atualizações.

O que é mais importante: editar o php.ini ou o wp-config.php?

O php.ini funciona ao nível do sistema, o wp-config.php ao nível da aplicação. Se tiver acesso ao php.ini, edite-o: os limites serão aplicados globalmente e não serão repostos nas atualizações do núcleo. Use o wp-config.php como alternativa quando o alojamento tiver bloqueado o php.ini. O WP_MEMORY_LIMIT no wp-config.php substitui o memory_limit do php.ini para o WordPress, mas não afeta o max_execution_time, upload_max_filesize e outras diretivas: essas têm de ser editadas através do .htaccess ou .user.ini.