Configurações básicas do wp-config.php: arquivo & memória, revisões — guia para SSH, SFTP e cPanel

Aviso de afiliados v3.1
Aviso de afiliados v3.2 (somente celular)

O arquivo wp-config.php é o arquivo de configuração mais importante de um site WordPress. Ele guarda as informações essenciais de que o WordPress precisa para se conectar ao banco de dados e funcionar, e por isso funciona como o coração do site.

Ⅰ. A função do wp-config.php

Este arquivo contém as seguintes configurações sensíveis.

  • Dados de conexão com o banco de dados
  • ↳ Traz os dados necessários para conectar ao banco de dados que guarda o conteúdo do WordPress, como o nome do banco MySQL ou MariaDB, o nome de usuário, a senha e o host.
  • Chaves de segurança e salts
  • ↳ São sequências únicas e aleatórias usadas para criptografar as sessões de login e os cookies dos usuários. Sem essas chaves, as sessões não ficam seguras.
  • Outras configurações essenciais
  • ↳ Aqui ficam constantes importantes que controlam o funcionamento do WordPress, como o prefixo das tabelas, ativar ou desativar o modo de depuração e desativar a edição de arquivos.
Arquivo wp-config.php do WordPress

Por isso, o wp-config.php se torna o alvo número um dos atacantes externos. Se as permissões estiverem erradas ou o conteúdo vazar, o banco de dados inteiro pode ser exposto ou o controle administrativo do site pode ser tomado, o que leva a uma grave vulnerabilidade de segurança. Por isso, o primeiro passo para reforçar a segurança do WordPress é proteger este arquivo.

1️⃣ Onde fica o wp-config.php

O wp-config.php fica na pasta raiz da instalação do WordPress, ao lado das pastas [wp-admin], [wp-content] e [wp-includes]. Na hospedagem com cPanel essa pasta é a [public_html]; no meu VPS da Lightsail ele está em [/home/uknew/www/wp-config.php].

Se o arquivo não aparecer na pasta raiz, confira a pasta um nível acima. O WordPress procura o wp-config.php primeiro na pasta de instalação e, se não o encontrar, carrega o da pasta logo acima.

2️⃣ Como abrir o wp-config.php

No [Gerenciador de arquivos] do painel da hospedagem, vá até a pasta raiz, clique com o botão direito no wp-config.php e escolha [Edit]. Assim você edita direto no navegador, sem outro programa.

Pelo programa de FTP (FileZilla), você baixa o arquivo para o computador, edita num editor e envia de novo. Guarde uma cópia do original antes de enviar para poder voltar na hora se der erro.

Em servidores como um VPS, que você acessa por SSH, rode o editor [vi] seguido do caminho do arquivo; o [nano] abre do mesmo jeito.

vi /home/uknew/www/wp-config.php

3️⃣ wp-config-sample.php e a estrutura básica

O pacote do WordPress recém-baixado não traz o wp-config.php, só o [wp-config-sample.php] no mesmo lugar. Quando você informa os dados do banco na tela de instalação, o WordPress cria o wp-config.php a partir desse arquivo; copiar e renomear você mesmo dá o mesmo resultado.

define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );

define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

$table_prefix = 'wp_';

define( 'WP_DEBUG', false );

Nas quatro linhas [DB_NAME], [DB_USER], [DB_PASSWORD] e [DB_HOST] entram os dados do banco que a hospedagem forneceu. Se um único valor estiver errado, aparece o erro [Error establishing a database connection] no lugar do site.

As oito linhas de [AUTH_KEY] a [NONCE_SALT] criptografam os cookies de login; pegue um conjunto novo em [https://api.wordpress.org/secret-key/1.1/salt/] e troque todas de uma vez. Ao mudar esses valores, todos os usuários conectados são desconectados.

[$table_prefix] é o prefixo colocado antes do nome das tabelas do banco, [wp_] por padrão, e separa várias instalações do WordPress num mesmo banco. Se você mudar [WP_DEBUG] para [true], os erros de PHP aparecem na tela, então deixe [false] num site no ar.

Ⅱ. Configurações básicas do wp-config.php para aplicar depois de instalar o WordPress

Todas as linhas de configuração vão acima do comentário /* That’s all, stop editing! Happy publishing. */. No simulador abaixo, escolha como se conectar (SSH, cPanel ou FTP) e abra o wp-config.php; a configuração que você clicar à esquerda leva direto à linha dela.

⚙️ Configurações do wp-config.phpSimulador de configurações
/* That’s all, stop editing! Happy publishing. */
Tecnicamente, este comentário (/* That’s all, stop editing! Happy publishing. */) não faz nada de especial como código PHP. É só um comentário.
user_a@server: ~
Last login: Mon Oct 5 14:10:02 2026 from 10.0.0.12
[user_a@server ~]$
Mas a equipe do WordPress o deixou ali como um ‘marcador‘ para dizer aos usuários: “abaixo deste comentário está o código essencial para o WordPress funcionar, então não mexa”.
  1. Constantes de configuração (define) acima: A maioria das constantes de configuração do WordPress (define) devem ser definidas /* That’s all, stop editing! Happy publishing. */ logo acima desse comentário para que o WordPress as carregue corretamente ao inicializar as configurações.
  2. O carregamento do WordPress começa abaixo: Abaixo deste comentário ficam a definição de [ABSPATH] e o código [require_once( ABSPATH . ‘wp-settings.php’ );]. A partir do momento em que este arquivo [wp-settings.php] é carregado, as funções principais do WordPress começam de fato a rodar.
Por isso, se você quiser fazer configurações adicionais (por exemplo, desativar a edição de arquivos com [define(‘DISALLOW_FILE_EDIT’, true);] ou definir o limite de memória com [define(‘WP_MEMORY_LIMIT’, ‘256M’);]), escreva-as antes de o arquivo principal de carregamento do WordPress ser chamado, ou seja, logo acima do comentário, para que sejam aplicadas sem erros.
No wp-config-sample.php há mais um comentário logo acima do comentário [stop editing]: [Add any custom values between this line and the “stop editing” line.]. As configurações que você mesmo adicionar vão entre esses dois comentários.
Configuração de memória do WordPress
Nos tutoriais de WordPress e na documentação oficial, aparece [define(‘WP_MEMORY_LIMIT’, ‘256M’);] sozinho na maioria dos casos.
A configuração de memória define o máximo de memória que o WordPress pode usar no PHP, para evitar erros de falta de memória (Fatal error: Allowed memory size exhausted) enquanto temas ou plugins rodam. Ou seja, para o site rodar de forma estável sem estourar os recursos, é uma proteção básica.
‘WP_MAX_MEMORY_LIMIT’ é uma configuração que libera mais memória para o back-end do que para o front-end.
WP_MEMORY_LIMIT é o “limite de memória para os visitantes do site”,
e WP_MAX_MEMORY_LIMIT é o “limite ampliado para o painel e as tarefas internas”.
Só configurando os dois você tem controle total da memória do WordPress.
Se o valor do wp-config.php for maior que o do php.ini ou do pool do PHP-FPM no servidor, vale a configuração do servidor.
Limitar as revisões
Não é preciso instalar um plugin só para definir o número de revisões. Uma linha com a constante abaixo no wp-config.php dá o mesmo resultado, e não sobram no banco de dados configurações de plugin para apagar depois.
As revisões do WordPress acumulam sem parar as versões anteriores dos posts, o que deixa o site mais lento. Principalmente em sites sem cache, e mesmo com cache enquanto você trabalha no painel — sobretudo ao criar conteúdo em posts ou páginas —, até as páginas dos visitantes podem ficar lentas.
Por exemplo, quando o servidor usa cerca de 50% da CPU total, as páginas dos visitantes podem ficar lentas seja qual for o plugin de cache.
Por isso, você desativa as revisões ou limita a quantidade.
Se você usa WP Rocket ou Perfmatters, também dá para cuidar disso nas telas de configuração. WP Rocket apaga as revisões já acumuladas com [Revisions], na aba [Database], mas não tem uma opção para limitar a quantidade.
Tela de limpeza de revisões do banco de dados no WP Rocket
Perfmatters define em [Limit Post Revisions] quantas revisões ficam por post e em [Autosave Interval] o intervalo do salvamento automático.
Configuração de limite de revisões no Perfmatters
Ajustar o intervalo de salvamento automático
Por padrão, o WordPress salva os posts automaticamente a cada minuto. Dá para aumentar, por exemplo, dos 60 segundos padrão para 5 minutos (300 segundos).
Configurações do Heartbeat
O Heartbeat não tem constante para o wp-config.php, então não dá para controlá-lo por este arquivo. Se você colocar o código abaixo no wp-config.php, ele roda antes de o WordPress carregar a função [add_action], e o site para com o erro [Call to undefined function add_action()].
O ‘Heartbeat’ do WordPress é um sinal que verifica se o servidor e o site continuam conectados. A Heartbeat API usa o 
/wp-admin/admin-ajax.php para fazer chamadas AJAX a partir do navegador. No painel do WordPress, esse arquivo envia uma requisição POST a cada 15 segundos.
Dá para configurar para que ele funcione só nas telas de edição de posts do painel, [post.php]·[post-new.php].
WP Rocket: na aba [Heartbeat], escolha [Do not limit], [Reduce activity] ou [Disable] para o painel, o editor de posts e o front-end.
Tela de configurações do Heartbeat no WP Rocket
Perfmatters define em [Disable Heartbeat] as telas em que o Heartbeat fica liberado e em [Heartbeat Frequency] o intervalo das requisições.
Configurações do Heartbeat no Perfmatters
Se você não usa nenhum dos dois, não instale outro plugin só por causa do Heartbeat. Os plugins deixam as configurações no banco de dados mesmo depois de excluídos, então coloque o código abaixo no [functions.php] do tema.
/** Disable Heartbeat everywhere except post editor */
add_action('init', function() {
    global $pagenow;
    if ($pagenow != 'post.php' && $pagenow != 'post-new.php') {
        wp_deregister_script('heartbeat');
    }
}, 1);
Configurações globais
Configurações globais é o wp-config.php com todas as configurações deste artigo.
As duas linhas de memória, o limite de 3 revisões e o salvamento automático de 300 segundos já estão, em ordem, acima do comentário [stop editing].
O Heartbeat fica fora das configurações globais porque dá erro no wp-config.php.
Clique no ícone de copiar no canto superior direito da tela para copiar só as linhas a adicionar.
Funciona só no seu navegador e não altera nenhum arquivo real. Escolha no alto como você se conecta e clique nos chips em ordem para abrir o wp-config.php; a configuração que você escolher à esquerda leva direto à linha dela. Em vez dos chips, você também pode clicar no terminal e digitar os comandos e as teclas do vi. O servidor virtual tem só os arquivos de que este artigo precisa, e as telas do cPanel e do FileZilla são desenhos simplificados das reais.

🔢 FAQ & conteúdo recomendado

Se faltar uma aspa ou um ponto e vírgula na linha que você acabou de salvar, o PHP não consegue ler o wp-config.php até o fim e o site não abre. Volte ao original que você salvou antes de editar e confira só as linhas alteradas.

O artigo sobre a segurança do wp-config.php recomenda [600], que só deixa o dono ler e gravar o arquivo. Em servidores onde o PHP roda com uma conta diferente da dona do arquivo, com 600 ele não consegue ler o arquivo, então confira logo depois da mudança se o site abre.

Ao ser ativado, o WP Rocket coloca no topo do arquivo a linha [define( ‘WP_CACHE’, true ); // Added by WP Rocket]; no meu wp-config.php ela também está na linha 2. É essa linha que faz o WordPress carregar o arquivo de cache [advanced-cache.php].

Se a mesma constante já estiver definida mais acima no arquivo, o PHP usa o valor definido primeiro e, para a linha de baixo, só deixa o aviso [Constant WP_MEMORY_LIMIT already defined]. Procure o nome da constante no arquivo inteiro para ver se há linhas adicionadas pela hospedagem ou por um plugin.

ℹ️ Aviso de afiliados
O conteúdo deste site contém links de afiliados. Quando um visitante compra um produto ou serviço por meio de um desses links, o site recebe uma comissão do vendedor. O valor que o comprador paga (em promoções, ele diminui ↓) não aumenta por causa disso. Preços, descontos e informações de estoque valem para o momento em que o texto foi escrito e podem ter mudado, por isso confirme com o vendedor antes de comprar. Os produtos são escolhidos e avaliados por critérios próprios, e o recebimento de comissão não influencia a ordem de apresentação nem o conteúdo das avaliações.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Demonstre sua humanidade: 8   +   3   =