{"id":3112,"date":"2026-02-04T17:42:10","date_gmt":"2026-02-04T20:42:10","guid":{"rendered":"https:\/\/helpsysadmin.com.br\/blog\/?p=3112"},"modified":"2026-04-28T19:42:07","modified_gmt":"2026-04-28T22:42:07","slug":"nginx-cache-wordpress-producao","status":"publish","type":"post","link":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/","title":{"rendered":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o"},"content":{"rendered":"<div id=\"helps-3018803110\" class=\"helps-before-content-2 helps-entity-placement\"><script async src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-3661896953164277\"\r\n     crossorigin=\"anonymous\"><\/script>\r\n<!-- 2anuncios display quadrado -->\r\n<ins class=\"adsbygoogle\"\r\n     style=\"display:block\"\r\n     data-ad-client=\"ca-pub-3661896953164277\"\r\n     data-ad-slot=\"5051229894\"\r\n     data-ad-format=\"auto\"\r\n     data-full-width-responsive=\"true\"><\/ins>\r\n<script>\r\n     (adsbygoogle = window.adsbygoogle || []).push({});\r\n<\/script><\/div>\n<p class=\"wp-block-paragraph\"><strong>arquitetura de servidor web em produ\u00e7\u00e3o<\/strong> \u00e9 onde teoria e vida real se encontram \ud83d\ude04<br>Vou te mostrar o <strong>modelo ideal (moderno, est\u00e1vel e escal\u00e1vel)<\/strong> e depois explico <strong>por que cada pe\u00e7a existe<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Implementar cache no Nginx \u00e9 uma das formas mais eficientes de reduzir a carga de processamento em servidores WordPress. Mesmo assim, durante picos de tr\u00e1fego ou campanhas de marketing, o servidor ainda pode precisar lidar com aumentos tempor\u00e1rios no uso de CPU. Em ambientes VPS, esses picos podem ser absorvidos por mecanismos como o <strong><a href=\"https:\/\/helpsysadmin.com.br\/blog\/configuracao-burst-cpu-vps\/\">burst de CPU em VPS<\/a><\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-arquitetura-ideal-visao-geral\">Arquitetura ideal (vis\u00e3o geral)<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>        \ud83c\udf0d Internet\n            |\n     \ud83c\udf10 CDN \/ WAF (Cloudflare)\n            |\n     \ud83d\udd12 Load Balancer (L4\/L7)\n            |\n    \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n    \u2502  Nginx (Reverse)    \u2502\n    \u2502  TLS + Cache        \u2502\n    \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n              |\n       \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n       \u2502 PHP-FPM     \u2502\n       \u2502 (isolado)   \u2502\n       \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n              |\n       \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n       \u2502 Banco (DB)  \u2502\n       \u2502 MariaDB     \u2502\n       \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n              |\n       \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n       \u2502 Redis       \u2502\n       \u2502 Cache\/Sess. \u2502\n       \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-camada-por-camada-o-porque\">Camada por camada (o <strong>porqu\u00ea<\/strong>)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-1-cdn-waf-cloudflare-fastly-etc\">1\ufe0f\u20e3 CDN + WAF (Cloudflare, Fastly, etc.)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Fun\u00e7\u00e3o<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Bloqueia ataque antes de chegar no servidor<\/li>\n\n\n\n<li>Cacheia est\u00e1tico globalmente<\/li>\n\n\n\n<li>Reduz lat\u00eancia absurda<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Em produ\u00e7\u00e3o real<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Rate limit<\/li>\n\n\n\n<li>Bot management<\/li>\n\n\n\n<li>TLS + HTTP\/3<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Sem CDN hoje, voc\u00ea est\u00e1 desperdi\u00e7ando recursos.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-2-load-balancer-opcional-mas-ideal\">2\ufe0f\u20e3 Load Balancer (opcional, mas ideal)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Pode ser:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloud (AWS ELB, HAProxy cloud)<\/li>\n\n\n\n<li>Local (HAProxy, Nginx)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Serve para<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Alta disponibilidade<\/li>\n\n\n\n<li>Escalar horizontalmente<\/li>\n\n\n\n<li>Zero-downtime deploy<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mesmo com <strong>1 servidor<\/strong>, j\u00e1 vale deixar o desenho preparado.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-3-nginx-reverse-proxy\">3\ufe0f\u20e3 Nginx (Reverse Proxy)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Aqui \u00e9 onde muita gente erra.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Responsabilidades<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>TLS termination<\/li>\n\n\n\n<li>HTTP\/2 e HTTP\/3<\/li>\n\n\n\n<li>Cache de p\u00e1ginas<\/li>\n\n\n\n<li>Entregar est\u00e1tico<\/li>\n\n\n\n<li>Proxy para PHP-FPM<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Por que n\u00e3o Apache direto?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Nginx \u00e9 <strong>event-driven<\/strong><\/li>\n\n\n\n<li>Apache com PHP \u00e9 pesado para concorr\u00eancia<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Apache s\u00f3 faz sentido <strong>atr\u00e1s do Nginx<\/strong> ou para legacy.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-4-php-fpm-isolado\">4\ufe0f\u20e3 PHP-FPM isolado<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nunca misture tudo no mesmo pool.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Boas pr\u00e1ticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pool por site<\/li>\n\n\n\n<li>Usu\u00e1rio separado<\/li>\n\n\n\n<li><code>pm = ondemand<\/code> ou <code>dynamic<\/code><\/li>\n\n\n\n<li><code>pm.max_children<\/code> calculado<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Isso evita:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Um site derrubar o outro<\/li>\n\n\n\n<li>Memory leak em efeito domin\u00f3<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-5-banco-de-dados-separado-ou-bem-ajustado\">5\ufe0f\u20e3 Banco de dados separado (ou bem ajustado)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Ideal:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>DB em <strong>outro servidor<\/strong><\/li>\n\n\n\n<li>Replica\u00e7\u00e3o<\/li>\n\n\n\n<li>Backups autom\u00e1ticos<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Em VPS \u00fanica:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MariaDB bem ajustado<\/li>\n\n\n\n<li>Buffer pool \u2248 60\u201370% da RAM dispon\u00edvel<\/li>\n\n\n\n<li>Slow query log ativo<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-6-redis-essencial-hoje\">6\ufe0f\u20e3 Redis (essencial hoje)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Usos<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache de objeto (WordPress, Laravel)<\/li>\n\n\n\n<li>Sess\u00f5es<\/li>\n\n\n\n<li>Filas leves<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Resultado:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Menos acesso ao banco<\/li>\n\n\n\n<li>Menos CPU<\/li>\n\n\n\n<li>Resposta mais r\u00e1pida<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Redis mal configurado \u00e9 comum \u2014 mas Redis bem usado \u00e9 m\u00e1gico.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-7-sistema-operacional-base-solida\">7\ufe0f\u20e3 Sistema operacional (base s\u00f3lida)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><a href=\"https:\/\/helpsysadmin.com.br\/blog\/como-instalar-crowdsec\/\" data-internallinksmanager029f6b8e52c=\"1\" title=\"Como instalar Crowdsec\" target=\"_blank\" rel=\"noopener\">Linux<\/a> minimal<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ubuntu LTS \/ AlmaLinux \/ Rocky<\/li>\n\n\n\n<li>Sem servi\u00e7os in\u00fateis<\/li>\n\n\n\n<li>Swap controlado<\/li>\n\n\n\n<li>I\/O scheduler correto<\/li>\n\n\n\n<li>MTU certo<\/li>\n\n\n\n<li>Time sync (chrony)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">A maioria dos \u201cproblemas misteriosos\u201d vem daqui.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Estrat\u00e9gias de cache ajudam a diminuir o n\u00famero de requisi\u00e7\u00f5es processadas pelo PHP e pelo banco de dados, reduzindo significativamente o consumo de CPU do servidor. Mesmo assim, picos de acesso ainda podem ocorrer em aplica\u00e7\u00f5es web populares. Em ambientes virtualizados, entender como funciona o <strong><a href=\"https:\/\/helpsysadmin.com.br\/blog\/configuracao-burst-cpu-vps\/\">burst de CPU em servidores VPS<\/a><\/strong> pode ajudar a lidar com esses momentos de alta demanda.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-arquitetura-ideal-na-pratica-vps-unica\">Arquitetura ideal na pr\u00e1tica (VPS \u00fanica)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Se fosse montar <strong>hoje<\/strong>, eu faria:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloudflare (CDN + WAF)<\/li>\n\n\n\n<li>Nginx<\/li>\n\n\n\n<li>PHP-FPM (pools separados)<\/li>\n\n\n\n<li>Redis<\/li>\n\n\n\n<li>MariaDB<\/li>\n\n\n\n<li>Backups offsite<\/li>\n\n\n\n<li>Monitoramento (Netdata \/ Prometheus)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Isso segura <strong>milhares de usu\u00e1rios simult\u00e2neos<\/strong> sem drama.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-erros-classicos-em-producao\">Erros cl\u00e1ssicos em produ\u00e7\u00e3o<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u274c Apache + PHP mod_php<br>\u274c Tudo rodando como root<br>\u274c Sem cache nenhum<br>\u274c Banco disputando RAM com PHP<br>\u274c Swap descontrolado<br>\u274c Sem monitoramento<br>\u274c \u201cUptime alto\u201d mas sistema travando<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-regra-de-ouro\">Regra de ouro<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Produ\u00e7\u00e3o n\u00e3o \u00e9 sobre funcionar.<br>\u00c9 sobre continuar funcionando sob press\u00e3o.<\/strong><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos <strong>desenhar a arquitetura ideal de WordPress em produ\u00e7\u00e3o<\/strong>, do jeito que <strong>aguenta tr\u00e1fego, update mal-feito, plugin ruim e ataque<\/strong>, sem drama \ud83d\ude04<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vou mostrar <strong>o desenho<\/strong>, depois <strong>o papel exato de cada camada<\/strong>, e no fim <strong>3 varia\u00e7\u00f5es pr\u00e1ticas<\/strong> (VPS \u00fanica, alta disponibilidade e WooCommerce).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\uddf1 Arquitetura ideal de WordPress (vis\u00e3o clara)<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>                \ud83c\udf0d Internet\n                     |\n            \ud83c\udf10 CDN + WAF (Cloudflare)\n         Cache | Bot | Rate Limit | TLS\n                     |\n             \ud83d\udd01 Load Balancer (L7)\n               (opcional, ideal)\n                     |\n        \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n        \u2502        NGINX               \u2502\n        \u2502 Reverse Proxy + Cache      \u2502\n        \u2502 HTTP\/2 | HTTP\/3 | Brotli   \u2502\n        \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                       |\n                \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n                \u2502  PHP-FPM   \u2502\n                \u2502 Pool WP    \u2502\n                \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2518\n                       |\n      \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n      |                |                |\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510   \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510   \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502   Redis    \u2502   \u2502  MariaDB   \u2502   \u2502  Storage   \u2502\n\u2502 Object     \u2502   \u2502   \/ MySQL  \u2502   \u2502 Uploads    \u2502\n\u2502 Cache      \u2502   \u2502            \u2502   \u2502 (local\/S3) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518   \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518   \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd0d Fun\u00e7\u00e3o real de cada camada<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83c\udf10 1\ufe0f\u20e3 CDN + WAF (Cloudflare)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Indispens\u00e1vel em WordPress moderno<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache HTML<\/li>\n\n\n\n<li>Bloqueio de bots<\/li>\n\n\n\n<li>Rate limiting (wp-login, xmlrpc)<\/li>\n\n\n\n<li>TLS offload<\/li>\n\n\n\n<li>HTTP\/3<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 <strong>Sem isso<\/strong>, WordPress vira alvo f\u00e1cil.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd01 2\ufe0f\u20e3 Load Balancer (opcional, mas futuro-proof)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Usado quando:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mais de 1 servidor web<\/li>\n\n\n\n<li>Zero-downtime deploy<\/li>\n\n\n\n<li>WooCommerce grande<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pode ser:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloud (AWS \/ GCP)<\/li>\n\n\n\n<li>HAProxy \/ Nginx<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u26a1 3\ufe0f\u20e3 Nginx (Reverse Proxy)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Aqui mora o ganho de performance.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Responsabilidades:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache FastCGI<\/li>\n\n\n\n<li>Servir est\u00e1tico<\/li>\n\n\n\n<li>Proxy para PHP-FPM<\/li>\n\n\n\n<li>Compress\u00e3o<\/li>\n\n\n\n<li>Headers de seguran\u00e7a<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nunca use WordPress direto no Apache em produ\u00e7\u00e3o pesada.<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udc18 4\ufe0f\u20e3 PHP-FPM (isolado)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Regra de ouro:<\/strong> 1 pool por site<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Configura\u00e7\u00e3o t\u00edpica:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>pm = ondemand<\/code><\/li>\n\n\n\n<li><code>pm.max_children<\/code> calculado<\/li>\n\n\n\n<li>Memory limit controlado<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Resultado:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Plugin ruim n\u00e3o derruba tudo<\/li>\n\n\n\n<li>Uso de RAM previs\u00edvel<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\ude80 5\ufe0f\u20e3 Redis (Object Cache)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Essencial para WordPress.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cache:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Queries<\/li>\n\n\n\n<li>Transients<\/li>\n\n\n\n<li>Sess\u00f5es<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Plugins comuns:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Redis Object Cache<\/li>\n\n\n\n<li>WP Rocket (integrando)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Reduz carga no banco absurdamente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\uddc4\ufe0f 6\ufe0f\u20e3 Banco de dados (MariaDB)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Boas pr\u00e1ticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Buffer Pool grande<\/li>\n\n\n\n<li>Slow query log ativo<\/li>\n\n\n\n<li>Tabelas otimizadas<\/li>\n\n\n\n<li>\u00cdndices corretos<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Em sites grandes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>DB separado<\/li>\n\n\n\n<li>R\u00e9plica de leitura<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udcc1 7\ufe0f\u20e3 Storage (uploads)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Op\u00e7\u00f5es:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Local (sites pequenos)<\/li>\n\n\n\n<li>S3 \/ R2 \/ MinIO (ideal)<\/li>\n\n\n\n<li>CDN puxando direto<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Evita:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>I\/O local excessivo<\/li>\n\n\n\n<li>Problemas em cluster<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\uddea Arquiteturas pr\u00e1ticas<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd39 VPS \u00danica (90% dos casos)<\/h3>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>Cloudflare\n   |\n Nginx\n   |\nPHP-FPM\n |    \\\nRedis  MariaDB\n<\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714 R\u00e1pida<br>\u2714 Simples<br>\u2714 Barata<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd39 Alta disponibilidade<\/h3>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>Cloudflare\n   |\n Load Balancer\n   |\nNginx x2\n   |\nPHP-FPM x2\n   |\nRedis + DB\n<\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714 Escala horizontal<br>\u2714 Sem downtime<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd39 WooCommerce pesado<\/h3>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>Cloudflare (Cache OFF p\/ carrinho)\n   |\n Nginx\n   |\nPHP-FPM (pool dedicado)\n   |\nRedis (sess\u00f5es)\n   |\nMariaDB (separado)\n<\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714 Carrinho est\u00e1vel<br>\u2714 Checkout r\u00e1pido<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u274c Erros comuns em WordPress produ\u00e7\u00e3o<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Apache + mod_php<\/li>\n\n\n\n<li>Cache s\u00f3 via plugin<\/li>\n\n\n\n<li>Sem Redis<\/li>\n\n\n\n<li>Tudo no mesmo pool<\/li>\n\n\n\n<li>Plugins sem controle<\/li>\n\n\n\n<li>Sem rate limit<\/li>\n\n\n\n<li>wp-cron rodando via web<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udde0 Regra de ouro do WordPress<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Cache fora do WordPress.<br>WordPress s\u00f3 gera conte\u00fado \u2014 n\u00e3o protege nem escala.<\/strong><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Ent\u00e3o vamos <strong>fechar o desenho ideal para WordPress em uma VPS \u00fanica<\/strong>, do jeito <strong>simples, r\u00e1pido e dif\u00edcil de derrubar<\/strong> \ud83d\udd25<br>Sem overengineering, mas <strong>com padr\u00e3o de produ\u00e7\u00e3o real<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\uddf1 Arquitetura WordPress \u2014 VPS \u00fanica (ideal)<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>                \ud83c\udf0d Internet\n                     |\n            \ud83c\udf10 Cloudflare (CDN + WAF)\n          Cache HTML | Rate limit | TLS\n                     |\n              \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n              \u2502    NGINX      \u2502\n              \u2502 Reverse Proxy \u2502\n              \u2502 FastCGI Cache \u2502\n              \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                      |\n               \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n               \u2502  PHP-FPM   \u2502\n               \u2502 Pool WP    \u2502\n               \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2518\n                      |\n        \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n        \u2502             \u2502             \u2502\n   \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n   \u2502  Redis   \u2502  \u2502 MariaDB  \u2502  \u2502 Storage  \u2502\n   \u2502 ObjCache \u2502  \u2502   DB     \u2502  \u2502 Uploads  \u2502\n   \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd27 Stack recomendada (sem firula)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>SO<\/strong>: Ubuntu 22.04 LTS \/ AlmaLinux 9<\/li>\n\n\n\n<li><strong>Web<\/strong>: Nginx<\/li>\n\n\n\n<li><strong>PHP<\/strong>: PHP-FPM (8.1 ou 8.2)<\/li>\n\n\n\n<li><strong>Cache<\/strong>: Redis<\/li>\n\n\n\n<li><strong>DB<\/strong>: MariaDB 10.6+<\/li>\n\n\n\n<li><strong>CDN<\/strong>: Cloudflare<\/li>\n\n\n\n<li><strong>Backup<\/strong>: Offsite (S3 \/ R2)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u2699\ufe0f Configura\u00e7\u00e3o essencial (o que faz diferen\u00e7a)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83c\udf10 Cloudflare<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache everything (exceto <code>\/wp-admin<\/code>, <code>\/wp-login.php<\/code>)<\/li>\n\n\n\n<li>Rate limit em:\n<ul class=\"wp-block-list\">\n<li><code>\/wp-login.php<\/code><\/li>\n\n\n\n<li><code>\/xmlrpc.php<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Brotli + HTTP\/3<\/li>\n\n\n\n<li>Page Rules simples<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u26a1 Nginx (core da performance)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Responsabilidades:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Servir est\u00e1tico<\/li>\n\n\n\n<li>Cache FastCGI<\/li>\n\n\n\n<li>Proxy para PHP<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Essencial:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>fastcgi_cache<\/code><\/li>\n\n\n\n<li><code>proxy_cache<\/code><\/li>\n\n\n\n<li>Headers de seguran\u00e7a<\/li>\n\n\n\n<li>Gzip\/Brotli<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 <strong>90% das requisi\u00e7\u00f5es nem chegam no PHP.<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udc18 PHP-FPM (estabilidade)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Config recomendada:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>pm = ondemand<\/code><\/li>\n\n\n\n<li><code>pm.max_children<\/code> calculado<\/li>\n\n\n\n<li><code>memory_limit<\/code> realista<\/li>\n\n\n\n<li><code>request_terminate_timeout<\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Regra:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Um site = um pool<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\ude80 Redis (obrigat\u00f3rio)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Object Cache<\/li>\n\n\n\n<li>Transients<\/li>\n\n\n\n<li>Sess\u00f5es<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Plugin:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Redis Object Cache (oficial)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Resultado:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Menos MySQL<\/li>\n\n\n\n<li>Menos CPU<\/li>\n\n\n\n<li>Mais estabilidade<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\uddc4\ufe0f MariaDB<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Boas pr\u00e1ticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>innodb_buffer_pool_size<\/code> \u2248 60% RAM dispon\u00edvel<\/li>\n\n\n\n<li><code>slow_query_log = ON<\/code><\/li>\n\n\n\n<li>Charset <code>utf8mb4<\/code><\/li>\n\n\n\n<li>\u00cdndices certos<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Nunca deixe DB \u201cdefault\u201d.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd01 Cron (muita gente erra aqui)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Desativar wp-cron via web<\/strong><\/li>\n\n\n\n<li>Criar cron real no sistema<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>*\/5 * * * * php \/var\/www\/site\/wp-cron.php\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udce6 Plugins obrigat\u00f3rios (enxutos)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714 Redis Object Cache<br>\u2714 Cache leve (WP Rocket \/ similar)<br>\u2714 Seguran\u00e7a (Wordfence \/ WAF)<br>\u2714 Backup offsite<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u274c Evitar plugins \u201cmilagrosos\u201d<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udee1\ufe0f Hardening m\u00ednimo<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>DISALLOW_FILE_EDIT<\/code><\/li>\n\n\n\n<li>Permiss\u00f5es corretas<\/li>\n\n\n\n<li>Rate limit<\/li>\n\n\n\n<li>XML-RPC protegido<\/li>\n\n\n\n<li>Headers HTTP<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udcca Monitoramento (n\u00e3o opcional)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Netdata<\/li>\n\n\n\n<li>Log lento do PHP<\/li>\n\n\n\n<li>Slow query MySQL<\/li>\n\n\n\n<li>Uso real de RAM<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Sem monitoramento, voc\u00ea s\u00f3 descobre o problema quando o site cai.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udde0 Regra de ouro (VPS \u00fanica)<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Cache + isolamento &gt; hardware bruto<\/strong><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Uma VPS bem montada <strong>vence<\/strong> servidor caro mal configurado.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Abaixo est\u00e1 <strong>configura\u00e7\u00e3o REAL de Nginx com FastCGI Cache para WordPress em VPS \u00fanica<\/strong>, <strong>pronta pra produ\u00e7\u00e3o<\/strong> \u2014 sem gambiarra e sem \u201cexemplo de blog\u201d \ud83d\ude04<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vou dividir em <strong>3 partes<\/strong>:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Cache global<\/li>\n\n\n\n<li>Server block WordPress<\/li>\n\n\n\n<li>Explica\u00e7\u00e3o do que \u00e9 cr\u00edtico<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">1\ufe0f\u20e3 Cache FastCGI (config global)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Coloque em <code>\/etc\/nginx\/conf.d\/fastcgi-cache.conf<\/code><\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>fastcgi_cache_path \/var\/cache\/nginx\/wordpress\n    levels=1:2\n    keys_zone=WORDPRESS:100m\n    inactive=60m\n    max_size=5g\n    use_temp_path=off;\n\nfastcgi_cache_key &quot;$scheme$request_method$host$request_uri&quot;;\n\nmap $request_method $skip_cache_method {\n    default 0;\n    POST    1;\n}\n\nmap $http_cookie $skip_cache_cookie {\n    default 0;\n    ~*wordpress_logged_in 1;\n    ~*comment_author     1;\n    ~*woocommerce_items_in_cart 1;\n}\n\nmap $request_uri $skip_cache_uri {\n    default 0;\n    ~*\/wp-admin\/ 1;\n    ~*\/wp-login.php 1;\n    ~*\/cart\/ 1;\n    ~*\/checkout\/ 1;\n    ~*\/my-account\/ 1;\n}\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">2\ufe0f\u20e3 Server block WordPress (produ\u00e7\u00e3o)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 <code>\/etc\/nginx\/sites-available\/site.conf<\/code><\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>server {\n    listen 443 ssl http2;\n    server_name site.com www.site.com;\n\n    root \/var\/www\/site\/public;\n    index index.php;\n\n    ssl_certificate     \/etc\/letsencrypt\/live\/site.com\/fullchain.pem;\n    ssl_certificate_key \/etc\/letsencrypt\/live\/site.com\/privkey.pem;\n\n    add_header X-Cache $upstream_cache_status always;\n\n    client_max_body_size 64M;\n\n    location \/ {\n        try_files $uri $uri\/ \/index.php?$args;\n    }\n\n    location ~ \\.php$ {\n        include fastcgi_params;\n\n        fastcgi_pass unix:\/run\/php\/php8.2-fpm-site.sock;\n        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n\n        fastcgi_cache WORDPRESS;\n        fastcgi_cache_valid 200 301 302 60m;\n        fastcgi_cache_use_stale error timeout updating http_500 http_503;\n        fastcgi_cache_background_update on;\n        fastcgi_cache_lock on;\n\n        fastcgi_ignore_headers Cache-Control Expires Set-Cookie;\n\n        fastcgi_no_cache\n            $skip_cache_method\n            $skip_cache_cookie\n            $skip_cache_uri;\n\n        fastcgi_cache_bypass\n            $skip_cache_method\n            $skip_cache_cookie\n            $skip_cache_uri;\n    }\n\n    location ~* \\.(css|js|jpg|jpeg|png|gif|svg|ico|woff2?)$ {\n        expires 30d;\n        access_log off;\n    }\n\n    location ~ \/\\. {\n        deny all;\n    }\n}\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">3\ufe0f\u20e3 O que ESSA config resolve (de verdade)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd25 Performance<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache <strong>fora do WordPress<\/strong><\/li>\n\n\n\n<li>90% das requisi\u00e7\u00f5es n\u00e3o chegam no PHP<\/li>\n\n\n\n<li>Atualiza\u00e7\u00e3o em background (zero pico)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udee1\ufe0f Seguran\u00e7a<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Admin e login fora do cache<\/li>\n\n\n\n<li>Cookies respeitados<\/li>\n\n\n\n<li>Bloqueio de arquivos ocultos<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83e\udde0 Intelig\u00eancia<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache invalida automaticamente por URL<\/li>\n\n\n\n<li>Suporte real a WooCommerce<\/li>\n\n\n\n<li>Header <code>X-Cache<\/code> pra debug (<code>HIT<\/code>, <code>MISS<\/code>)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd0e Como validar<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>curl -I https:\/\/site.com\n<\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Procure:<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>X-Cache: HIT\n<\/pre><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u274c Erros comuns (evitados aqui)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cache plugin brigando com Nginx<\/li>\n\n\n\n<li>Cache em POST<\/li>\n\n\n\n<li>Cache de usu\u00e1rio logado<\/li>\n\n\n\n<li>WooCommerce quebrando carrinho<\/li>\n\n\n\n<li>PHP sobrecarregado sem motivo<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udde0 Regra de ouro<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Cache no Nginx \u00e9 previs\u00edvel.<br>Cache no WordPress \u00e9 aposta.<\/strong><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Cache HTTP \u00e9 uma das estrat\u00e9gias mais eficazes para melhorar a performance de sites WordPress. No entanto, para garantir estabilidade durante picos de acesso, tamb\u00e9m \u00e9 importante entender como o servidor gerencia recursos de processamento. Para aprofundar esse tema, veja tamb\u00e9m o guia sobre <strong><a href=\"https:\/\/helpsysadmin.com.br\/blog\/configuracao-burst-cpu-vps\/\">configura\u00e7\u00e3o de burst de CPU em VPS<\/a><\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-faq\">FAQ<\/h2>\n\n\n\n<div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1770237533035\"><strong class=\"schema-faq-question\">Nginx com cache \u00e9 melhor que plugin de cache no WordPress?<\/strong> <p class=\"schema-faq-answer\">Sim. O cache no Nginx funciona <strong>antes do PHP e do WordPress<\/strong>, consumindo menos CPU e mem\u00f3ria e sendo muito mais previs\u00edvel em produ\u00e7\u00e3o.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1770237590563\"><strong class=\"schema-faq-question\">FastCGI Cache quebra login ou \u00e1rea administrativa?<\/strong> <p class=\"schema-faq-answer\">N\u00e3o, desde que URLs como <code>\/wp-admin<\/code> e <code>\/wp-login.php<\/code> e cookies de usu\u00e1rios logados sejam exclu\u00eddos do cache, como na configura\u00e7\u00e3o recomendada.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1770237643669\"><strong class=\"schema-faq-question\">Posso usar Nginx Cache junto com Redis no WordPress?<\/strong> <p class=\"schema-faq-answer\">Sim. O Nginx cacheia p\u00e1ginas HTML, enquanto o Redis cuida do <strong>object cache<\/strong> (queries, transients e sess\u00f5es). Eles se complementam.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1770237665612\"><strong class=\"schema-faq-question\">Essa configura\u00e7\u00e3o funciona para WooCommerce?<\/strong> <p class=\"schema-faq-answer\">Funciona, mas exige exclus\u00f5es extras para carrinho, checkout e conta do usu\u00e1rio. Em lojas, o cache deve ser usado com mais cuidado.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1770237686691\"><strong class=\"schema-faq-question\">Cloudflare ainda \u00e9 necess\u00e1rio se eu usar cache no Nginx?<\/strong> <p class=\"schema-faq-answer\">Sim. Cloudflare adiciona <strong>CDN global, WAF, prote\u00e7\u00e3o contra bots e ataques<\/strong>, reduzindo ainda mais a carga no servidor.<\/p> <\/div> <\/div>\n","protected":false},"excerpt":{"rendered":"<p>arquitetura de servidor web em produ\u00e7\u00e3o \u00e9 onde teoria e vida real se encontram \ud83d\ude04Vou te mostrar o modelo ideal (moderno, est\u00e1vel [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":4421,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4195],"tags":[3044,24,2370,2882,2638,3,209,36],"class_list":["post-3112","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-servidores-web-banco-de-dados","tag-fastcgi-cache","tag-nginx","tag-nginx-reverse-proxy","tag-otimizacao-wordpress","tag-performance-wordpress","tag-servidor-linux","tag-vps","tag-wordpress"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.9 (Yoast SEO v27.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o<\/title>\n<meta name=\"description\" content=\"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o\" \/>\n<meta property=\"og:description\" content=\"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog HelpSysAdmin\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-04T20:42:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-28T22:42:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"HelpSysAdmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@brhelpsysad\" \/>\n<meta name=\"twitter:site\" content=\"@brhelpsysad\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/\"},\"author\":{\"name\":\"HelpSysAdmin\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/bdbe3d7d71a0c6a3cb474c18da574efb\"},\"headline\":\"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o\",\"datePublished\":\"2026-02-04T20:42:10+00:00\",\"dateModified\":\"2026-04-28T22:42:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/\"},\"wordCount\":1437,\"publisher\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2026\\/02\\/configuracao_nginx_com_cache_wordpress.webp\",\"keywords\":[\"fastcgi cache\",\"nginx\",\"nginx reverse proxy\",\"Otimiza\u00e7\u00e3o WordPress\",\"Performance WordPress\",\"servidor linux\",\"vps\",\"wordpress\"],\"articleSection\":[\"Servidores Web e Banco de Dados\"],\"inLanguage\":\"pt-BR\"},{\"@type\":[\"WebPage\",\"FAQPage\"],\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/\",\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/\",\"name\":\"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2026\\/02\\/configuracao_nginx_com_cache_wordpress.webp\",\"datePublished\":\"2026-02-04T20:42:10+00:00\",\"dateModified\":\"2026-04-28T22:42:07+00:00\",\"description\":\"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#breadcrumb\"},\"mainEntity\":[{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237533035\"},{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237590563\"},{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237643669\"},{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237665612\"},{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237686691\"}],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#primaryimage\",\"url\":\"https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2026\\/02\\/configuracao_nginx_com_cache_wordpress.webp\",\"contentUrl\":\"https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2026\\/02\\/configuracao_nginx_com_cache_wordpress.webp\",\"width\":1200,\"height\":800},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/\",\"name\":\"Blog HelpSysAdmin\",\"description\":\"Webserver linux blog\",\"publisher\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#organization\"},\"alternateName\":\"HelpSysAdmin Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#organization\",\"name\":\"HelpSysAdmin Gerenciamento de Servidores\",\"alternateName\":\"HelpSysAdmin\",\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\/\\/mlkpd8g42nae.i.optimole.com\\/w:512\\/h:512\\/q:mauto\\/f:best\\/https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2020\\/12\\/favicon.png\",\"contentUrl\":\"https:\\/\\/mlkpd8g42nae.i.optimole.com\\/w:512\\/h:512\\/q:mauto\\/f:best\\/https:\\/\\/helpsysadmin.com.br\\/blog\\/wp-content\\/uploads\\/2020\\/12\\/favicon.png\",\"width\":512,\"height\":512,\"caption\":\"HelpSysAdmin Gerenciamento de Servidores\"},\"image\":{\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/brhelpsysad\",\"https:\\\/\\\/mastodon.social\\\/@helpsysadmin\"],\"description\":\"Oferecemos o gerenciamento de servidores dedicados, vps ou cloud. Apresentamos a melhor experi\u00eancia em atendimento e servi\u00e7o. Nosso time cuidar\u00e1 do seu servidor com backups, an\u00e1lises constantes, ajustes de seguran\u00e7a, realiza\u00e7\u00e3o de manuten\u00e7\u00e3o preventiva e corretiva, otimiza\u00e7\u00e3o de performance al\u00e9m de monitoramento 24\u00d77 com suporte Pr\u00f3 Ativo.\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1\",\"maxValue\":\"10\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/bdbe3d7d71a0c6a3cb474c18da574efb\",\"name\":\"HelpSysAdmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g\",\"caption\":\"HelpSysAdmin\"},\"sameAs\":[\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/\"]},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237533035\",\"position\":1,\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237533035\",\"name\":\"Nginx com cache \u00e9 melhor que plugin de cache no WordPress?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim. O cache no Nginx funciona <strong>antes do PHP e do WordPress<\\\/strong>, consumindo menos CPU e mem\u00f3ria e sendo muito mais previs\u00edvel em produ\u00e7\u00e3o.\",\"inLanguage\":\"pt-BR\"},\"inLanguage\":\"pt-BR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237590563\",\"position\":2,\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237590563\",\"name\":\"FastCGI Cache quebra login ou \u00e1rea administrativa?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"N\u00e3o, desde que URLs como \\\/wp-admin e \\\/wp-login.php e cookies de usu\u00e1rios logados sejam exclu\u00eddos do cache, como na configura\u00e7\u00e3o recomendada.\",\"inLanguage\":\"pt-BR\"},\"inLanguage\":\"pt-BR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237643669\",\"position\":3,\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237643669\",\"name\":\"Posso usar Nginx Cache junto com Redis no WordPress?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim. O Nginx cacheia p\u00e1ginas HTML, enquanto o Redis cuida do <strong>object cache<\\\/strong> (queries, transients e sess\u00f5es). Eles se complementam.\",\"inLanguage\":\"pt-BR\"},\"inLanguage\":\"pt-BR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237665612\",\"position\":4,\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237665612\",\"name\":\"Essa configura\u00e7\u00e3o funciona para WooCommerce?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Funciona, mas exige exclus\u00f5es extras para carrinho, checkout e conta do usu\u00e1rio. Em lojas, o cache deve ser usado com mais cuidado.\",\"inLanguage\":\"pt-BR\"},\"inLanguage\":\"pt-BR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237686691\",\"position\":5,\"url\":\"https:\\\/\\\/helpsysadmin.com.br\\\/blog\\\/nginx-cache-wordpress-producao\\\/#faq-question-1770237686691\",\"name\":\"Cloudflare ainda \u00e9 necess\u00e1rio se eu usar cache no Nginx?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Sim. Cloudflare adiciona <strong>CDN global, WAF, prote\u00e7\u00e3o contra bots e ataques<\\\/strong>, reduzindo ainda mais a carga no servidor.\",\"inLanguage\":\"pt-BR\"},\"inLanguage\":\"pt-BR\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o","description":"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/","og_locale":"pt_BR","og_type":"article","og_title":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o","og_description":"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.","og_url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/","og_site_name":"Blog HelpSysAdmin","article_published_time":"2026-02-04T20:42:10+00:00","article_modified_time":"2026-04-28T22:42:07+00:00","og_image":[{"width":1200,"height":800,"url":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp","type":"image\/webp"}],"author":"HelpSysAdmin","twitter_card":"summary_large_image","twitter_creator":"@brhelpsysad","twitter_site":"@brhelpsysad","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#article","isPartOf":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/"},"author":{"name":"HelpSysAdmin","@id":"https:\/\/helpsysadmin.com.br\/blog\/#\/schema\/person\/bdbe3d7d71a0c6a3cb474c18da574efb"},"headline":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o","datePublished":"2026-02-04T20:42:10+00:00","dateModified":"2026-04-28T22:42:07+00:00","mainEntityOfPage":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/"},"wordCount":1437,"publisher":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/#organization"},"image":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#primaryimage"},"thumbnailUrl":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp","keywords":["fastcgi cache","nginx","nginx reverse proxy","Otimiza\u00e7\u00e3o WordPress","Performance WordPress","servidor linux","vps","wordpress"],"articleSection":["Servidores Web e Banco de Dados"],"inLanguage":"pt-BR"},{"@type":["WebPage","FAQPage"],"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/","url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/","name":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o","isPartOf":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#primaryimage"},"image":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#primaryimage"},"thumbnailUrl":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp","datePublished":"2026-02-04T20:42:10+00:00","dateModified":"2026-04-28T22:42:07+00:00","description":"Aprenda a configurar Nginx com FastCGI Cache para WordPress em VPS \u00fanica, aumentando performance, estabilidade e seguran\u00e7a em produ\u00e7\u00e3o.","breadcrumb":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#breadcrumb"},"mainEntity":[{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237533035"},{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237590563"},{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237643669"},{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237665612"},{"@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237686691"}],"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#primaryimage","url":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp","contentUrl":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2026\/02\/configuracao_nginx_com_cache_wordpress.webp","width":1200,"height":800},{"@type":"BreadcrumbList","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/helpsysadmin.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Configura\u00e7\u00e3o Nginx com Cache para WordPress em Produ\u00e7\u00e3o"}]},{"@type":"WebSite","@id":"https:\/\/helpsysadmin.com.br\/blog\/#website","url":"https:\/\/helpsysadmin.com.br\/blog\/","name":"Blog HelpSysAdmin","description":"Webserver linux blog","publisher":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/#organization"},"alternateName":"HelpSysAdmin Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/helpsysadmin.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/helpsysadmin.com.br\/blog\/#organization","name":"HelpSysAdmin Gerenciamento de Servidores","alternateName":"HelpSysAdmin","url":"https:\/\/helpsysadmin.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/helpsysadmin.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:512\/h:512\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2020\/12\/favicon.png","contentUrl":"https:\/\/mlkpd8g42nae.i.optimole.com\/w:512\/h:512\/q:mauto\/f:best\/https:\/\/helpsysadmin.com.br\/blog\/wp-content\/uploads\/2020\/12\/favicon.png","width":512,"height":512,"caption":"HelpSysAdmin Gerenciamento de Servidores"},"image":{"@id":"https:\/\/helpsysadmin.com.br\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/brhelpsysad","https:\/\/mastodon.social\/@helpsysadmin"],"description":"Oferecemos o gerenciamento de servidores dedicados, vps ou cloud. Apresentamos a melhor experi\u00eancia em atendimento e servi\u00e7o. Nosso time cuidar\u00e1 do seu servidor com backups, an\u00e1lises constantes, ajustes de seguran\u00e7a, realiza\u00e7\u00e3o de manuten\u00e7\u00e3o preventiva e corretiva, otimiza\u00e7\u00e3o de performance al\u00e9m de monitoramento 24\u00d77 com suporte Pr\u00f3 Ativo.","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1","maxValue":"10"}},{"@type":"Person","@id":"https:\/\/helpsysadmin.com.br\/blog\/#\/schema\/person\/bdbe3d7d71a0c6a3cb474c18da574efb","name":"HelpSysAdmin","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/efc0007e6a313a844b72de257e05c6083b07b6ecc6983a4f71e06293ff2e22fd?s=96&d=mm&r=g","caption":"HelpSysAdmin"},"sameAs":["https:\/\/helpsysadmin.com.br\/blog\/"]},{"@type":"Question","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237533035","position":1,"url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237533035","name":"Nginx com cache \u00e9 melhor que plugin de cache no WordPress?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Sim. O cache no Nginx funciona <strong>antes do PHP e do WordPress<\/strong>, consumindo menos CPU e mem\u00f3ria e sendo muito mais previs\u00edvel em produ\u00e7\u00e3o.","inLanguage":"pt-BR"},"inLanguage":"pt-BR"},{"@type":"Question","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237590563","position":2,"url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237590563","name":"FastCGI Cache quebra login ou \u00e1rea administrativa?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"N\u00e3o, desde que URLs como \/wp-admin e \/wp-login.php e cookies de usu\u00e1rios logados sejam exclu\u00eddos do cache, como na configura\u00e7\u00e3o recomendada.","inLanguage":"pt-BR"},"inLanguage":"pt-BR"},{"@type":"Question","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237643669","position":3,"url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237643669","name":"Posso usar Nginx Cache junto com Redis no WordPress?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Sim. O Nginx cacheia p\u00e1ginas HTML, enquanto o Redis cuida do <strong>object cache<\/strong> (queries, transients e sess\u00f5es). Eles se complementam.","inLanguage":"pt-BR"},"inLanguage":"pt-BR"},{"@type":"Question","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237665612","position":4,"url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237665612","name":"Essa configura\u00e7\u00e3o funciona para WooCommerce?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Funciona, mas exige exclus\u00f5es extras para carrinho, checkout e conta do usu\u00e1rio. Em lojas, o cache deve ser usado com mais cuidado.","inLanguage":"pt-BR"},"inLanguage":"pt-BR"},{"@type":"Question","@id":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237686691","position":5,"url":"https:\/\/helpsysadmin.com.br\/blog\/nginx-cache-wordpress-producao\/#faq-question-1770237686691","name":"Cloudflare ainda \u00e9 necess\u00e1rio se eu usar cache no Nginx?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Sim. Cloudflare adiciona <strong>CDN global, WAF, prote\u00e7\u00e3o contra bots e ataques<\/strong>, reduzindo ainda mais a carga no servidor.","inLanguage":"pt-BR"},"inLanguage":"pt-BR"}]}},"lang":"pt","translations":{"pt":3112},"pll_sync_post":{},"_links":{"self":[{"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/posts\/3112","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/comments?post=3112"}],"version-history":[{"count":2,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/posts\/3112\/revisions"}],"predecessor-version":[{"id":4647,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/posts\/3112\/revisions\/4647"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/media\/4421"}],"wp:attachment":[{"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/media?parent=3112"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/categories?post=3112"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helpsysadmin.com.br\/blog\/wp-json\/wp\/v2\/tags?post=3112"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}