# Como corrigir o Customizer bloqueado pelo firewall do All in One Security com Astra Pro no WordPress

O conflito do AIOS com o Astra Customizer ocorre quando o firewall do All in One Security barra a requisicao admin-ajax de gravacao (customize_save) do Personalizar, fazendo o Astra Pro não salvar e a previa travar em carregamento.

## O que é Customizer bloqueado pelo AIOS com Astra Pro?

O AIOS Astra Customizer trava quando o firewall do plugin All in One Security intercepta as requisicoes que o WordPress Customizer (a tela Aparencia, Personalizar) usa para gravar e pre-visualizar mudancas. O Customizer não salva via POST de formulário tradicional: ele envia a acao customize_save por admin-ajax e recarrega a previa por uma URL com a query string customize_changeset_uuid e parametros customize_*. Quando uma regra de firewall do AIOS classifica essa requisicao como suspeita, ela e rejeitada com 403 Forbidden antes de chegar ao WordPress, e o painel do Astra Pro fica girando ou mostra falha ao publicar.

O AIOS grava boa parte das suas regras de firewall no arquivo .htaccess do site, conforme a documentação oficial. Regras como as do conjunto 6G, o bloqueio de requisicoes POST com user-agent ou referer em branco, o filtro de query strings maliciosas e o bloqueio da REST API para usuários deslogados podem casar com o tráfego legitimo do Customizer e do Astra Pro. O resultado e sempre o mesmo: a segurança esta ativa, mas as personalizacoes de tema deixam de salvar.

## Como identificar

- Ao clicar em Publicar no Personalizar, o botão mostra 'Salvando...' e depois retorna ao estado anterior sem confirmar, ou aparece a mensagem 'Houve um erro ao tentar salvar' ('There was an error trying to save').
- A previa do Customizer fica presa em carregamento eterno e o Console do navegador (F12) mostra status 403 Forbidden nas chamadas para admin-ajax.php com a acao customize_save.
- As opções do Astra Pro (cores, tipografia, cabeçalho, rodape) abrem, mas qualquer alteração e perdida ao recarregar a tela.
- A aba de rede do navegador registra uma resposta 'Forbidden' vinda do servidor (gerada pelo .htaccess) e não uma resposta JSON do WordPress.
- Ao desativar temporariamente o All in One Security, o Astra Customizer volta a salvar normalmente, confirmando que o bloqueio parte do firewall.

**Antes de começar:** Antes de editar o .htaccess ou desligar regras de firewall em producao, faca um backup do arquivo .htaccess e do site, ou teste em um ambiente de staging. Reative cada regra de segurança assim que o Customizer voltar a salvar, para não deixar o site exposto.

## Como prevenir

- Mantenha sempre o seu IP de administrador na lista branca (whitelist) do AIOS antes de iniciar sessoes de edição de tema, evitando que regras de firewall barrem o seu próprio acesso.
- Ative as regras 6G e os bloqueios mais agressivos em etapas, testando o Customizer e o Astra Pro a cada nova regra, para identificar conflitos antes de afeta-los em producao.
- Documente em qual ambiente cada regra de firewall foi validada e replique as configurações do AIOS de staging para producao apenas depois de confirmar que o Personalizar salva.
- Evite ligar o bloqueio de REST API para deslogados em sites que dependem do Customizer e de temas com previa dinâmica como o Astra Pro, que consultam a REST API para montar a pre-visualizacao.

Erros relacionados

- [Como corrigir o checkout bloqueado pelo firewall do All in One Security no WooCommerce](https://full.services/wp-fixer/corrigir-bloqueio-checkout-aios-woocommerce/)
- [Como corrigir o bloqueio de AJAX entre All in One Security e JetEngine](https://full.services/wp-fixer/corrigir-conflito-ajax-aios-jetengine/)
- [Como corrigir a IP Whitelist que não funciona no All in One Security](https://full.services/wp-fixer/corrigir-ip-whitelist-aios/)

## Causa

- O conjunto de regras 6G do firewall do AIOS, ativado na área WP Security, casa com a query string customize_changeset_uuid ou com os parametros customize_* da URL de previa e responde 403 antes do WordPress processar o salvamento.
- A regra do AIOS que bloqueia requisicoes POST com campo user-agent ou referer em branco rejeita a chamada admin-ajax customize_save quando o navegador ou um proxy/CDN intermediario não repassa esses cabeçalhos.
- O bloqueio de acesso a REST API para usuários deslogados, oferecido pelo AIOS, derruba endpoints que o Astra Pro e o Customizer consultam para montar a previa, fazendo a previa nunca carregar.
- O IP do administrador foi adicionado a lista negra do AIOS por excesso de eventos 404 ou tentativas de login durante a edição do tema, e o firewall passa a barrar todas as requisicoes daquele IP, inclusive as do Personalizar.
- Uma regra de firewall personalizada (Custom Rules) ou o filtro avancado de strings do AIOS, gravados no .htaccess, contem um padrão que coincide com nomes de parametros do Astra Pro enviados no salvamento.

## Como resolver

1. Confirme que o bloqueio vem do firewall do AIOS: Abra o Personalizar com o Console do navegador aberto e tente publicar. Se a chamada para admin-ajax.php retornar 403 Forbidden, desative o All in One Security por um instante e teste de novo. Se salvar com o plugin desligado, o conflito e do firewall e você isola a causa antes de mexer nas regras.

```
Painel WP -> Aparencia -> Personalizar
Abra o navegador em F12 -> aba Rede (Network) e tente Publicar
Painel WP -> Plugins -> desative 'All-In-One Security (AIOS)' e teste novamente
```

2. Adicione seu IP a lista branca (whitelist) do AIOS: Na área WP Security do AIOS, libere o seu endereco IP de administrador na lista branca de IPs. Isso garante que nenhuma regra de firewall barre as requisicoes do seu acesso enquanto você edita o tema. Descubra seu IP em um serviço como o ifconfig.me antes.

```
Painel WP -> WP Security -> Firewall -> Whitelist Manager (Lista Branca)
Marque a opção de habilitar a lista branca de IPs e adicione o seu IP atual
Salve as configurações (Save Settings)
```

3. Desligue as regras 6G e o bloqueio de POST suspeito: Ainda em WP Security, na área de Firewall, desative temporariamente as regras 6G e a opção que bloqueia requisicoes POST com user-agent ou referer em branco. Salve e teste o Customizer. Reative uma a uma depois para identificar qual regra causava o 403.

```
Painel WP -> WP Security -> Firewall -> 6G Blacklist (Lista Negra 6G)
Desmarque 'Enable 6G Firewall Protection' e salve
Em Internet Bots (Bots da Internet), desmarque o bloqueio de POST com user-agent/referer em branco e salve
```

4. Mantenha a REST API acessivel para a edição do tema: Se o AIOS estiver com o bloqueio de REST API para usuários deslogados ativo e a previa do Astra continuar sem carregar, desative essa opção. O Customizer e o Astra Pro consultam endpoints da REST API para montar a pre-visualizacao.

```
Painel WP -> WP Security -> Firewall -> aba de regras adicionais (Additional Firewall Rules)
Desmarque a opção que bloqueia o acesso a REST API para não logados
Salve e recarregue a tela Personalizar
```

5. Remova as regras do .htaccess se o 403 persistir: Caso o bloqueio continue, as regras gravadas no .htaccess podem estar com cache. Acesse o arquivo .htaccess da raiz via FTP e remova o bloco delimitado pelos comentarios do AIOS, deixando o plugin reescreve-lo limpo ao salvar de novo no painel. Faca uma copia do arquivo antes.

```
Acesse o site por FTP/SFTP e baixe o arquivo .htaccess da raiz
Remova o bloco entre '# BEGIN All In One WP Security' e '# END All In One WP Security'
Envie o arquivo de volta e regrave as regras pelo painel WP Security -> Settings
```


## Código

```apache
# Liberar o Customizer e o admin-ajax do bloqueio de firewall do AIOS
# Insira ACIMA do bloco '# BEGIN All In One WP Security' no .htaccess da raiz
<IfModule mod_rewrite.c>
    RewriteEngine On
    # Nao aplica regras de firewall a requisicoes do Personalizar
    RewriteCond %{QUERY_STRING} customize_changeset_uuid [NC]
    RewriteRule .* - [S=20]
    # Nao aplica regras de firewall ao salvamento via admin-ajax
    RewriteCond %{REQUEST_URI} /wp-admin/admin-ajax.php$ [NC]
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule .* - [S=20]
</IfModule>
```

## Perguntas frequentes

### Por que o Astra Pro não salva no Personalizar com o AIOS ativo

O firewall do All in One Security barra a requisicao admin-ajax customize_save que o Personalizar usa para gravar, respondendo 403 Forbidden antes do WordPress processar. Libere o seu IP na lista branca do AIOS e desative as regras 6G para o Astra Pro voltar a salvar.

### Como saber se o bloqueio vem do firewall ou do tema

Abra o Console do navegador em F12, aba Rede, e tente publicar. Se aparecer 403 Forbidden nas chamadas para admin-ajax.php, desative o AIOS e teste de novo. Se salvar com o plugin desligado, o bloqueio e do firewall, não do Astra Pro.

### Preciso desinstalar o All in One Security para usar o Customizer

Não. Basta liberar o seu IP na lista branca e desligar as regras especificas que casam com o tráfego do Customizer, como as 6G e o bloqueio de POST com cabeçalho em branco. As demais protecoes do AIOS continuam ativas.

### Quais regras do AIOS costumam bloquear o Personalizar

As mais comuns são o conjunto 6G, o bloqueio de requisicoes POST com user-agent ou referer em branco e o bloqueio da REST API para deslogados. Qualquer uma delas pode casar com o tráfego admin-ajax e de previa que o Customizer e o Astra Pro usam.

### Onde fica a lista branca de IPs no All in One Security

Na área WP Security, dentro da seção Firewall, no gerenciador de lista branca (Whitelist Manager). Ative a lista branca de IPs e adicione o seu endereco atual antes de editar o tema para não bloquear o próprio acesso.

### O bloqueio da REST API do AIOS afeta o Astra Pro

Sim. O Customizer e temas com previa dinâmica como o Astra Pro consultam endpoints da REST API para montar a pre-visualizacao. Com a REST API bloqueada para deslogados, a previa pode nunca carregar, mesmo logado, dependendo de como o endpoint e chamado.

### Por que meu IP foi parar na lista negra do AIOS durante a edição

O AIOS pode bloquear um IP por excesso de eventos 404 ou tentativas de login. Recarregar a previa do Customizer várias vezes gera 404 que disparam o lockout. Remova o seu IP da lista de bloqueio e adicione-o a lista branca para evitar a recorrencia.

### Editar o .htaccess pela mao quebra o firewall do AIOS

Não, desde que você remova apenas o bloco entre os comentarios BEGIN e END do All In One WP Security e deixe o plugin regrava-lo pelo painel. Faca um backup do .htaccess antes, pois um erro de sintaxe nesse arquivo derruba o site inteiro com erro 500.

**Fonte:** [All-In-One Security (AIOS) — Documentacao oficial do firewall](https://teamupdraft.com/documentation/all-in-one-security/)
