Como impedir que o WordPress substitua o arquivo .htaccess

Publicados: 2023-02-23

Recentemente, um de nossos leitores perguntou se era possível impedir que o WordPress sobrescrevesse o código personalizado em seu arquivo .htaccess.

O WordPress, juntamente com vários plugins, adiciona configurações personalizadas ao arquivo de configuração .htaccess. Se você adicionou seu próprio código personalizado ao .htaccess, pode estar preocupado que ele seja substituído ou excluído.

Neste artigo, mostraremos como impedir que o WordPress substitua o arquivo .htaccess.

How to Stop WordPress From Overwriting .htaccess File

Por que o WordPress substitui o arquivo .htaccess?

Seu arquivo .htaccess é um poderoso arquivo de configuração que armazena configurações importantes sobre seu site WordPress. Ele contém regras que informam ao seu servidor de hospedagem como lidar com seu site.

O WordPress usa o arquivo .htaccess para armazenar suas configurações de permalink. Sempre que você alterar ou regenerar seus permalinks, o WordPress substituirá automaticamente as configurações antigas em .htaccess pelas novas configurações.

Alguns plugins do WordPress também salvam suas configurações em .htaccess. Por exemplo, o plug-in W3 Total Cache modificará seu arquivo .htaccess para configurar as ferramentas de cache e otimização que fazem parte do plug-in.

Por fim, você pode fazer suas próprias alterações personalizadas em .htacess para controlar como seu site funciona. Por exemplo, você pode adicionar regras personalizadas ao arquivo que protegem sua área de administração, mantêm seu site protegido contra hackers, configuram redirecionamentos, banem endereços IP suspeitos e muito mais.

Alguns usuários estão preocupados com o fato de que, se adicionarem suas próprias regras personalizadas ao .htaccess, elas poderão ser excluídas quando o WordPress sobrescrever o arquivo com novas configurações. Outros usuários preferem configurar manualmente o .htaccess e não permitir que o WordPress grave nele.

Com isso dito, vamos dar uma olhada em como impedir que o WordPress sobrescreva seu arquivo .htaccess. Basta usar os links rápidos abaixo para pular para a seção em que você está interessado.

  • Como Impedir que o WordPress Substitua Suas Regras .htaccess
  • Como impedir que o WordPress modifique .htaccess

Como Impedir que o WordPress Substitua Suas Regras .htaccess

A boa notícia é que, se você entender como o arquivo .htaccess funciona, poderá ter certeza de que suas regras personalizadas não serão substituídas.

Isso porque as áreas do arquivo que serão alteradas pelo WordPress ou seus plugins estão claramente marcadas. Apenas certifique-se de não adicionar código a essas áreas.

Não modifique o código dentro dos marcadores do WordPress

Como dissemos anteriormente, o WordPress usa .htaccess para armazenar as configurações de uma estrutura de URL compatível com SEO. O código que ele salva no arquivo será automaticamente substituído e atualizado sempre que você alterar suas configurações de permalink.

Como você pode ver na captura de tela abaixo, o WordPress salva essas informações entre dois marcadores, # BEGIN WordPress e # END WordPress .

WordPress Markers in .htaccess

Observe o aviso dentro desses marcadores:

As diretivas (linhas) entre “BEGIN WordPress” e “END WordPress” são geradas dinamicamente e só devem ser modificadas por meio de filtros do WordPress. Quaisquer alterações nas diretivas entre esses marcadores serão substituídas.

Isso significa que o WordPress não substituirá ou modificará nenhum código que você adicionar fora desses marcadores. Os usuários geralmente adicionam seu código personalizado no topo do arquivo, acima do marcador # BEGIN WordPress .

Dica: .htaccess é um arquivo oculto localizado na pasta raiz do seu site WordPress. Se você está tendo dificuldades para encontrá-lo, dê uma olhada em nosso guia sobre por que você não consegue encontrar o arquivo .htaccess em seu site WordPress.

Não modifique o código dentro dos marcadores de seus plug-ins

Quando um plug-in salva suas configurações em .htaccess, ele também o coloca entre marcadores que se parecem com # BEGIN Plugin e # END Plugin .

Por exemplo, se você instalar e configurar o plug-in W3 Total Cache para melhorar a velocidade e o desempenho do seu site, ele adicionará regras a .htaccess entre os marcadores # BEGIN W3TC Browser Cache e # END W3TC Browser Cache .

Example of Plugin Markers in .htaccess

Essas regras serão substituídas sempre que você alterar as configurações do plug-in, portanto, tome cuidado para não adicionar suas próprias regras .htaccess personalizadas entre esses marcadores.

Criando marcadores para seu código personalizado

Em casos raros, um plug-in mal-comportado pode modificar o código fora de seus marcadores # BEGIN e # END . No entanto, normalmente não modificará o código encontrado entre os marcadores usados ​​pelo WordPress ou outros plugins.

Se você está preocupado com um plug-in malcomportado substituindo seu código, você pode adicionar seus próprios marcadores ao arquivo .htaccess.

Por exemplo, você pode digitar os marcadores # BEGIN MyCustomCode e # END MyCustomCode na parte superior do arquivo .htaccess e adicionar suas próprias regras personalizadas entre esses marcadores.

You Can Create Your Own Markers in .htaccess for Your Custom Rules

Se você também precisar adicionar código ao final de .htaccess, poderá adicionar um conjunto diferente de marcadores lá. Apenas certifique-se de dar-lhes nomes diferentes. Por exemplo, você pode usar 'MyCustomCodeTop' e 'MyCustomCodeBottom'.

Como impedir que o WordPress modifique .htaccess

Agora que você entende como o .htaccess funciona, você pode ter certeza de que seu código personalizado não será substituído pelo WordPress ou por seus plugins.

No entanto, alguns desenvolvedores e usuários avançados desejam impedir que o WordPress faça alterações em .htaccess.

Por exemplo, eles podem querer criar permalinks digitando as configurações manualmente em .htaccess. Nesse caso, eles vão querer evitar conflitos impedindo o WordPress de salvar suas próprias configurações de permalink no arquivo.

Não recomendamos isso a menos que você saiba o que está fazendo, porque pode levar a consequências inesperadas. No entanto, isso pode ser feito alterando as permissões do arquivo ou usando código.

Impedindo que o WordPress altere .htaccess usando permissões de arquivo

Uma maneira de impedir que o WordPress modifique .htaccess é tornar o arquivo somente leitura. Para fazer isso, você precisa alterar as permissões de arquivo usando um cliente FTP ou o gerenciador de arquivos fornecido pelo seu provedor de hospedagem WordPress.

Você encontrará o arquivo .htaccess no diretório raiz da sua instalação do WordPress. Em seguida, você deve clicar com o botão direito do mouse no arquivo e selecionar 'Permissões de arquivo'.

Selecting File Permissions From the Menu in Your FTP Client

Isso exibirá um pop-up onde você pode alterar os atributos do arquivo.

A configuração padrão será 644, mas você pode alterá-la para 444 digitando diretamente no campo 'Valor numérico' ou verificando se apenas as caixas 'Ler' estão marcadas.

Changing the .htaccess File Permissions to 444 or Read-Only

Depois de clicar no botão 'OK', o arquivo será somente leitura e não poderá ser modificado.

Obviamente, isso significará que você também não poderá gravar no arquivo. Quando desejar fazer alterações, você precisará definir temporariamente as permissões de arquivo de volta para 644.

Impedindo que o WordPress altere .htaccess usando código

Outra solução é usar um trecho de código que permite ao WordPress saber que não deve gravar no arquivo .htaccess. Isso é útil se você quiser impedir que o WordPress modifique .htaccess sem bloquear seus plugins.

Nota: Editar qualquer arquivo principal do WordPress pode ser perigoso. Mesmo um pequeno erro pode causar grandes erros em seu site. É por isso que recomendamos esse método apenas para usuários avançados.

Basta adicionar o trecho de código a seguir no final do arquivo wp-config.php. Se precisar de ajuda, consulte nosso guia sobre como editar o arquivo wp-config.php no WordPress.

add_filter('got_rewrite', '__return_false');

Depois de fazer isso, o WordPress não gravará mais no arquivo .htaccess.

Mensagem de erro exibida quando o WordPress não pode alterar .htaccess

Se você tentar alterar suas configurações de permalink quando .htaccess estiver definido como somente leitura, uma mensagem de erro será exibida.

No topo da página Configurações »Permalinks , você verá a mensagem 'Você deve atualizar seu arquivo .htaccess agora.'

Permalink Settings Error Message When .htaccess Cannot Be Accessed

Isso permite que você saiba que o WordPress não conseguiu modificar o arquivo .htaccess.

Normalmente, isso é o que você pretendia. No entanto, se você deseja adicionar as configurações de permalink do WordPress a .htaccess, precisará fazê-lo manualmente.

Na parte inferior da página Configurações ≫ Permalinks , você verá outra mensagem de erro informando que seu arquivo .htaccess não é gravável. Abaixo disso, você verá as regras que precisam ser adicionadas ao .htaccess.

List of Rules You Will Need to Add to .htaccess Manually if Needed

Se desejar adicionar essas configurações, será necessário alterar temporariamente as permissões do arquivo .htaccess de volta para 644 para que ele possa ser editado. Depois disso, você deve colar as regras entre os marcadores de BEGIN e END do arquivo WordPress, substituindo o código já existente.

Quando terminar, basta definir o valor de volta para 444 e salvar o arquivo. Será mais uma vez ingravável.

Esperamos que este tutorial tenha ajudado você a aprender como impedir que o WordPress sobrescreva o arquivo .htaccess. Você também pode querer aprender como adicionar notificações push no WordPress e conferir nossa lista de especialistas dos melhores plug-ins e ferramentas de SEO para WordPress.

Se você gostou deste artigo, assine nosso canal do YouTube para tutoriais em vídeo do WordPress. Você também pode nos encontrar no Twitter e no Facebook.