Cloudflare Rate Limiting bloqueia a API REST do WP STAGING (HTTP 429)

Se o seu site está atrás da Cloudflare e existe uma regra de rate limiting ativa, essa regra também pode abranger a API REST do WP STAGING. A Cloudflare responde então a esses pedidos com HTTP 429 (Too Many Requests) e as funcionalidades do WP STAGING que dependem da API REST deixam de funcionar. A solução é uma exclusão de uma linha na regra de rate limiting.

Porque é que o rate limiting da Cloudflare quebra a API REST do WP STAGING?

As regras de rate limiting da Cloudflare são avaliadas sobre o pedido recebido, não sobre o plugin que o enviou. Uma regra escrita para todo o seu domínio, ou para um caminho com muito tráfego como /booking, conta portanto também os pedidos internos que o WP STAGING faz à sua própria API REST.

Assim que o contador é excedido, a Cloudflare bloqueia os restantes pedidos correspondentes e devolve HTTP 429. O WP STAGING nunca chega ao WordPress, por isso a funcionalidade que originou a chamada falha ou fica bloqueada.

O seu site é afetado se todas estas condições se verificarem:

  • O rate limiting da Cloudflare está ativado na zona.
  • Uma regra de rate limiting corresponde ao site WordPress ou a um caminho dentro dele, por exemplo /booking.
  • Essa regra não exclui a API REST do WP STAGING.

Que funcionalidades do WP STAGING deixam de funcionar?

A API REST do WP STAGING é usada por várias funcionalidades, entre elas:

  • Tarefas em segundo plano
  • Remote Sync
  • Magic Login
  • Atualização automática de plugins
  • Outras funcionalidades baseadas na API REST

Se estes pedidos forem limitados, falham com HTTP 429 e a funcionalidade que os despoletou não consegue concluir.

Como excluo a API REST do WP STAGING do rate limiting da Cloudflare?

Edite a regra de rate limiting para que deixe de corresponder aos pedidos à API REST do WP STAGING.

Passo 1: abra as suas regras de rate limiting

No painel da Cloudflare, selecione a sua conta e depois o seu domínio, vá a Security e abra Security rules. As suas regras de rate limiting estão listadas aí.

Passo 2: edite a regra que abrange o seu site WordPress

Abra a regra que abrange o site WordPress ou o caminho onde aparecem as respostas 429.

Passo 3: adicione a exclusão à expressão da regra

Acrescente esta condição à expressão de correspondência da regra:

and not http.request.uri.query contains "/wpstg/v1"

Uma expressão completa para uma regra que protege /booking fica assim:

(http.host eq "example.com" and starts_with(http.request.uri.path, "/booking")) and not http.request.uri.query contains "/wpstg/v1"

Passo 4: publique a regra

Guarde e publique. Pedidos como o seguinte deixam de ser limitados, enquanto o resto do site continua protegido:

?rest_route=/wpstg/v1/check_magic_login

Nota: wpstg/v1 faz parte da query string, não do caminho do URL. O WP STAGING chama a sua API REST através da forma ?rest_route=, por isso use http.request.uri.query em vez de http.request.uri.path na exclusão.

FAQ

Porque é que a exclusão usa http.request.uri.query e não http.request.uri.path?

O WP STAGING constrói os seus URLs REST como https://example.com/?rest_route=/wpstg/v1/<endpoint>. O namespace wpstg/v1 aparece portanto na query string. Uma regra que avalia http.request.uri.path nunca o veria e a exclusão não teria qualquer efeito.

Esta exclusão enfraquece a proteção do meu site?

Isenta apenas os pedidos cuja query string contém /wpstg/v1. Todos os outros pedidos ao seu domínio continuam a contar para a regra de rate limiting.

Também vejo erros 429 em /wp-json/wpstg/v1/. E agora?

Algumas configurações acedem à API REST através da forma com permalink. Nesse caso, adicione uma segunda condição para o caminho:

and not starts_with(http.request.uri.path, "/wp-json/wpstg/v1/")

O 429 pode ter outra causa além da Cloudflare?

Sim. Web application firewalls, rate limiting ao nível do alojamento e plugins de segurança também podem devolver HTTP 429. Verifique os registos do servidor e dos plugins se os erros continuarem depois de publicar a exclusão na Cloudflare.

Como confirmo que a correção funcionou?

Volte a acionar a funcionalidade que falhava, por exemplo abra um link de Magic Login ou inicie um Remote Sync, e consulte o registo Security Events da Cloudflare. Os pedidos que contêm /wpstg/v1 já não devem mostrar uma ação de bloqueio por rate limiting.

Artigos relacionados

Updated on August 4, 2026

Rene Hermenau

Autor: Rene Hermenau

Sobre o autor: René Hermenau é o fundador do WP STAGING. Ele trabalha com backups do WordPress, ambientes de staging, migrações, gestão de bases de dados e fluxos de implantação seguros.