{"id":22079,"date":"2026-11-10T08:00:00","date_gmt":"2026-11-10T07:00:00","guid":{"rendered":"https:\/\/webhosting.de\/?p=22079"},"modified":"2026-11-05T08:25:52","modified_gmt":"2026-11-05T07:25:52","slug":"nginx-stub-status-monitorizacao-do-servidor-web","status":"publish","type":"post","link":"https:\/\/webhosting.de\/pt\/nginx-stub-status-webserver-monitoring\/","title":{"rendered":"NGINX Stub Status: monitorizar em tempo real a atividade do servidor Web"},"content":{"rendered":"<div class=\"wh-article\" data-wh-layout=\"2.1.2\" style=\"width:100%;max-width:820px;margin:0 auto;color:#263b4b;font-family:inherit;font-size:18px;line-height:1.8;text-align:start;overflow-wrap:break-word;box-sizing:border-box\"><p class=\"wh-lead\" style=\"font-size:20px;line-height:1.7;color:#233746;margin:0 0 1.1em\">Com o NGINX Stub Status, podes monitorizar as liga\u00e7\u00f5es dos clientes e os contadores de pedidos atrav\u00e9s de um ponto de extremidade HTTP protegido. Os valores mostram o <strong style=\"font-weight:700;color:inherit\">Atividade de liga\u00e7\u00e3o e de consultas<\/strong>, mas n\u00e3o a utiliza\u00e7\u00e3o direta da CPU, da mem\u00f3ria ou da capacidade. As consultas repetidas tornam as altera\u00e7\u00f5es vis\u00edveis e permitem calcular uma taxa m\u00e9dia de consultas. Para tal, o m\u00f3dulo tem de estar dispon\u00edvel na vers\u00e3o do NGINX utilizada. Para registos cont\u00ednuos e alarmes, a p\u00e1gina de estado pode ser complementada com um exportador e o Prometheus; ambos os pontos finais requerem controlos de acesso adequados.  <\/p>\n<nav class=\"wh-toc\" aria-label=\"Conte\u00fado deste artigo\" style=\"display:block;margin:28px 0 38px;padding:22px;border:1px solid #d9e4e8;border-radius:14px;background:#f4f8f8\"><p class=\"wh-toc-title\" style=\"font-size:13px;font-weight:700;letter-spacing:.08em;color:#49656b;margin:0 0 14px\">Ir diretamente para a sec\u00e7\u00e3o<\/p><div class=\"wh-toc-grid\" style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px\"><div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#stub-status-grundlagen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">O que indica o estado \u00abStub\u00bb do NGINX<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#metriken-verstehen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Distinguir liga\u00e7\u00f5es e pedidos<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#modul-voraussetzungen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Verificar o m\u00f3dulo e a vers\u00e3o<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#endpunkt-konfigurieren\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Configurar o ponto final de estado como protegido<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#aktivierung-funktionstest\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Verificar a configura\u00e7\u00e3o e consultar o estado<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#werte-und-raten\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Ler valores de estado e calcular taxas<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#betrieb-fehlersuche\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Analisar erros e limites<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#verlauf-diagnose\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Classificar os processos e os problemas a montante<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#monitoring-entscheidung\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Do estado \u00e0 monitoriza\u00e7\u00e3o<\/a><\/div>\n<\/div><\/nav><section class=\"wh-section\" aria-labelledby=\"stub-status-grundlagen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"stub-status-grundlagen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">O que indica o estado \u00abStub\u00bb do NGINX<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><strong style=\"font-weight:700;color:inherit\">Estado do Stub do NGINX<\/strong> fornece m\u00e9tricas b\u00e1sicas do servidor Web em formato de texto atrav\u00e9s de um ponto de extremidade HTTP configurado. A resposta descreve a atividade do conjunto de processos NGINX consultado: nomeadamente, as liga\u00e7\u00f5es dos clientes e o total de pedidos contabilizados. Podes aceder a esta informa\u00e7\u00e3o localmente e compar\u00e1-la repetidamente, sem necessidade de recorrer a um sistema de monitoriza\u00e7\u00e3o completo. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Nesse contexto, tens de distinguir dois tipos de valores: um <strong style=\"font-weight:700;color:inherit\">Instant\u00e2neo<\/strong> mostra, por exemplo, quantas liga\u00e7\u00f5es de cliente est\u00e3o ativas no momento da consulta. Contadores globais como <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">requests<\/code> por outro lado, indicam o n\u00famero total de consultas registadas. S\u00f3 a compara\u00e7\u00e3o de v\u00e1rios valores de contagem em intervalos de tempo conhecidos permite tirar conclus\u00f5es sobre a taxa de consultas. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Os valores n\u00e3o constituem uma medi\u00e7\u00e3o direta da utiliza\u00e7\u00e3o da CPU ou da mem\u00f3ria, nem representam uma percentagem da capacidade dispon\u00edvel do servidor web. A exist\u00eancia de muitas liga\u00e7\u00f5es abertas pode ter diversas causas e implica\u00e7\u00f5es em termos de custos. Por isso, para avaliar a carga real, \u00e9 necess\u00e1rio recorrer adicionalmente a m\u00e9tricas de recursos e a informa\u00e7\u00f5es sobre tempos de resposta e erros. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">O \u00abStub Status\u00bb n\u00e3o desagrega os n\u00fameros por site virtual ou URL solicitada. Se uma instala\u00e7\u00e3o gerir v\u00e1rios sites, n\u00e3o \u00e9 poss\u00edvel determinar, apenas a partir do ponto final, qual deles \u00e9 respons\u00e1vel por um aumento. No caso de existirem v\u00e1rias inst\u00e2ncias do NGINX, deve registar os respetivos valores separadamente e atribu\u00ed-los de forma inequ\u00edvoca.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A pr\u00f3pria consulta \u00e0 p\u00e1gina de estado constitui, por si s\u00f3, um pedido HTTP e influencia ligeiramente os contadores observados. Este facto deve ser tido em conta na interpreta\u00e7\u00e3o de volumes de pedidos reduzidos ou de consultas muito frequentes. Uma \u00fanica consulta fornece, de qualquer forma, apenas um instant\u00e2neo; s\u00f3 a evolu\u00e7\u00e3o ao longo do tempo revela se a atividade se alterou.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"metriken-verstehen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"metriken-verstehen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Distinguir liga\u00e7\u00f5es e pedidos<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">O valor <strong style=\"font-weight:700;color:inherit\">Liga\u00e7\u00f5es ativas<\/strong> inclui liga\u00e7\u00f5es ativas do cliente, incluindo as liga\u00e7\u00f5es em espera. Por isso, n\u00e3o conta apenas as liga\u00e7\u00f5es atrav\u00e9s das quais est\u00e1 a ser transmitida uma resposta nesse momento. Os estados \u00abReading\u00bb, \u00abWriting\u00bb e \u00abWaiting\u00bb ajudam a contextualizar este n\u00famero total, mas n\u00e3o descrevem nem o consumo da CPU nem o n\u00famero de aplica\u00e7\u00f5es em execu\u00e7\u00e3o. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Quando uma solicita\u00e7\u00e3o \u00e9 recebida, a liga\u00e7\u00e3o fica no estado \u00abReading\u00bb, enquanto o NGINX l\u00ea o cabe\u00e7alho da solicita\u00e7\u00e3o. Posteriormente, pode passar para o estado \u00abWriting\u00bb quando o NGINX processa ou escreve a resposta. Isso n\u00e3o significa que, durante todo esse tempo, haja efetivamente um fluxo de bytes para o cliente: a espera por uma resposta do servidor upstream tamb\u00e9m pode fazer parte desse processo.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se uma liga\u00e7\u00e3o permanecer aberta ap\u00f3s uma resposta a outras consultas, pode ser considerada como <strong style=\"font-weight:700;color:inherit\">Em espera<\/strong> aparecer. Este estado inclui liga\u00e7\u00f5es de cliente inativas que aguardam um pr\u00f3ximo pedido. Por isso, um valor elevado de \u00abWaiting\u00bb, por si s\u00f3, n\u00e3o prova que haja sobrecarga; pode tamb\u00e9m corresponder a um ambiente com muitas liga\u00e7\u00f5es reutiliz\u00e1veis. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">As liga\u00e7\u00f5es e os pedidos s\u00e3o grandezas diferentes: atrav\u00e9s de uma liga\u00e7\u00e3o Keepalive podem ser processados v\u00e1rios pedidos sucessivamente. No HTTP\/2, \u00e9 poss\u00edvel transmitir v\u00e1rias solicita\u00e7\u00f5es atrav\u00e9s de uma \u00fanica liga\u00e7\u00e3o. Por isso, n\u00e3o \u00e9 poss\u00edvel deduzir um n\u00famero fixo de solicita\u00e7\u00f5es a partir do n\u00famero de liga\u00e7\u00f5es abertas, e o contador de solicita\u00e7\u00f5es n\u00e3o tem de aumentar na mesma propor\u00e7\u00e3o que os contadores de liga\u00e7\u00f5es. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para uma avalia\u00e7\u00e3o pr\u00e1tica, vale a pena comparar v\u00e1rios pedidos: se o \u00abWaiting\u00bb aumentar, enquanto os tempos de resposta e os erros se mant\u00eam normais, trata-se, numa primeira fase, de uma observa\u00e7\u00e3o e n\u00e3o de um sinal de alarme. A forma como a reutiliza\u00e7\u00e3o e os seus limites podem ser configurados \u00e9 explicada no artigo sobre <a href=\"https:\/\/webhosting.de\/pt\/otimizar-os-pedidos-keepalive-do-nginx-ajuste-do-desempenho-do-servidor-web\/\">Pedidos Keepalive do NGINX<\/a>.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"modul-voraussetzungen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"modul-voraussetzungen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Verificar o m\u00f3dulo e a vers\u00e3o<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para utilizar o Stub Status, \u00e9 necess\u00e1ria uma instala\u00e7\u00e3o do NGINX com o m\u00f3dulo <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">ngx_http_stub_status_module<\/code>, acesso \u00e0 sua configura\u00e7\u00e3o e, posteriormente, a possibilidade de consultar o ponto final protegido a partir do espa\u00e7o de rede previsto. O m\u00f3dulo n\u00e3o \u00e9 inclu\u00eddo por predefini\u00e7\u00e3o na compila\u00e7\u00e3o do NGINX. A sua inclus\u00e3o num pacote de distribui\u00e7\u00e3o depende do pacote em quest\u00e3o e deve ser verificada localmente. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Verifique no terminal a vers\u00e3o e os par\u00e2metros de configura\u00e7\u00e3o do ficheiro bin\u00e1rio do NGINX efetivamente utilizado pelo servi\u00e7o. O comando seguinte apresenta estas informa\u00e7\u00f5es; entre os par\u00e2metros, destaca-se <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">--with-http_stub_status_module<\/code> para a op\u00e7\u00e3o de compila\u00e7\u00e3o correspondente.  <\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copiar c\u00f3digo<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copiado<\/span><span data-wh-copy-fallback hidden>C\u00f3digo destacado \u2013 por favor, copie<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-bash\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">nginx -V<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">O fator decisivo \u00e9 a <strong style=\"font-weight:700;color:inherit\">ficheiro bin\u00e1rio correto<\/strong>: Um programa iniciado atrav\u00e9s do caminho de pesquisa <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">nginx<\/code> pode ser uma instala\u00e7\u00e3o diferente daquela em que o servi\u00e7o est\u00e1 a ser executado. Em caso de d\u00favida, verifica a configura\u00e7\u00e3o do servi\u00e7o e o comando de execu\u00e7\u00e3o utilizado na mesma. Em seguida, se for caso disso, executa explicitamente o ficheiro bin\u00e1rio em quest\u00e3o, em vez de deduzir o servi\u00e7o em produ\u00e7\u00e3o a partir da sa\u00edda de outra instala\u00e7\u00e3o. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A vers\u00e3o tamb\u00e9m influencia a forma como a diretiva \u00e9 escrita. A partir do NGINX 1.7.5, \u00e9 <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">stub_status<\/code> utilizada sem argumentos; as vers\u00f5es mais antigas exigiam um argumento qualquer, como, por exemplo, <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">on<\/code>. O limite de vers\u00e3o \u00e9 uma informa\u00e7\u00e3o de compatibilidade, n\u00e3o uma suposi\u00e7\u00e3o sobre qual a vers\u00e3o que est\u00e1 instalada no teu sistema. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se a op\u00e7\u00e3o de compila\u00e7\u00e3o n\u00e3o estiver presente na instala\u00e7\u00e3o verificada, deve esclarecer, antes de efetuar qualquer altera\u00e7\u00e3o na configura\u00e7\u00e3o, qual o pacote ou compila\u00e7\u00e3o adequado previsto para o seu ambiente. Um local de estado, por si s\u00f3, n\u00e3o substitui um m\u00f3dulo em falta. As altera\u00e7\u00f5es aos pacotes e \u00e0 configura\u00e7\u00e3o dos servi\u00e7os devem ser submetidas ao procedimento de opera\u00e7\u00e3o e aprova\u00e7\u00e3o aplic\u00e1vel. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"endpunkt-konfigurieren\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"endpunkt-konfigurieren\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Configurar o ponto final de estado como protegido<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para consultar o estado local, podes utilizar um <strong style=\"font-weight:700;color:inherit\">Ouvinte de loopback<\/strong> configurar. O exemplo seguinte \u00e9 um ficheiro de configura\u00e7\u00e3o para o existente <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">http<\/code>-Contexto, n\u00e3o \u00e9 um comando de terminal. Pressup\u00f5e que o m\u00f3dulo de estado \u00abstub\u00bb esteja dispon\u00edvel e que a porta de exemplo 8088, na morada em quest\u00e3o, n\u00e3o esteja j\u00e1 ocupada por outro servi\u00e7o. <\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>C\u00f3digo<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copiar c\u00f3digo<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copiado<\/span><span data-wh-copy-fallback hidden>C\u00f3digo destacado \u2013 por favor, copie<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-nginx\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">server {\n    listen 127.0.0.1:8088;\n    server_name localhost;\n\n    location = \/stub_status {\n        stub_status;\n        allow 127.0.0.1;\n        deny all;\n    }\n}<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A liga\u00e7\u00e3o a <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">127.0.0.1<\/code> limita este ouvinte \u00e0 interface de loopback IPv4 local. A localiza\u00e7\u00e3o exata apenas atribui o caminho especificado; a diretiva <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">stub_status<\/code> fornece a\u00ed os dados de estado. Assim, o listener n\u00e3o fica acess\u00edvel atrav\u00e9s de outras interfaces IPv4, independentemente de os restantes sites serem p\u00fablicos ou n\u00e3o. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">O <strong style=\"font-weight:700;color:inherit\">Regras de acesso<\/strong> complementam a regra de liga\u00e7\u00e3o: o NGINX verifica-as sequencialmente at\u00e9 encontrar a primeira correspond\u00eancia. O endere\u00e7o IPv4 local \u00e9 permitido; todos os outros endere\u00e7os s\u00e3o rejeitados. Como esta localiza\u00e7\u00e3o cont\u00e9m regras pr\u00f3prias, as regras de acesso de um contexto superior n\u00e3o s\u00e3o herdadas adicionalmente. Por isso, verifica a configura\u00e7\u00e3o completa antes de aplicares este exemplo. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">No caso dos contentores, o espa\u00e7o de rede \u00e9 determinante: um exportador num contentor separado acede, atrav\u00e9s do seu pr\u00f3prio <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">localhost<\/code> Normalmente, n\u00e3o \u00e9 a interface de loopback do contentor NGINX. Para uma consulta remota, \u00e9 necess\u00e1rio um caminho de liga\u00e7\u00e3o privado cuidadosamente planeado e controlos de acesso adequados. N\u00e3o tornes a p\u00e1gina de estado publicamente acess\u00edvel; esta cont\u00e9m informa\u00e7\u00f5es operacionais.<\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail1\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77-1024x683.webp\" class=\"wp-image-22085\" alt=\"Imagem simb\u00f3lica gerada por IA de uma ficha de rede ligada a um pequeno computador, como refer\u00eancia \u00e0 via de acesso.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-status-netzwerkzugang-496e617b-detail1-e747e02c77.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail1\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">Imagem ilustrativa gerada por IA: Para um ponto final de estado protegido, \u00e9 necess\u00e1rio ter em conta o espa\u00e7o de rede do servi\u00e7o que efetua a consulta.<\/figcaption><\/figure><\/section><section class=\"wh-section\" aria-labelledby=\"aktivierung-funktionstest\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"aktivierung-funktionstest\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Verificar a configura\u00e7\u00e3o e consultar o estado<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ap\u00f3s a introdu\u00e7\u00e3o, verifica primeiro a configura\u00e7\u00e3o no terminal. O comando seguinte verifica a sintaxe e tenta abrir os ficheiros referenciados. Para tal, utiliza o ficheiro bin\u00e1rio do NGINX espec\u00edfico para o servi\u00e7o e, se for o caso, o seu caminho de configura\u00e7\u00e3o diferente; uma verifica\u00e7\u00e3o bem-sucedida ainda n\u00e3o ativa a altera\u00e7\u00e3o. <\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copiar c\u00f3digo<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copiado<\/span><span data-wh-copy-fallback hidden>C\u00f3digo destacado \u2013 por favor, copie<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-bash\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">nginx -t<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A <strong style=\"font-weight:700;color:inherit\">Reload aprovado<\/strong> \u00e9 um passo produtivo independente. Execute-o apenas ap\u00f3s aprova\u00e7\u00e3o e de acordo com os procedimentos operacionais do seu ambiente. Ao executar o \u00abreload\u00bb, o NGINX recarrega a configura\u00e7\u00e3o, inicia novos workers com a nova configura\u00e7\u00e3o e encerra os antigos de forma ordenada. Verifica posteriormente o sucesso da opera\u00e7\u00e3o e os registos, em vez de deduzir que a altera\u00e7\u00e3o est\u00e1 ativa apenas com base na verifica\u00e7\u00e3o de sintaxe bem-sucedida. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ap\u00f3s a ativa\u00e7\u00e3o ter sido aprovada, podes aceder localmente ao ponto final na mesma rede com <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">curl<\/code> consultar. O bot\u00e3o <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">-i<\/code> mostra, al\u00e9m do corpo da resposta, tamb\u00e9m o estado HTTP e os cabe\u00e7alhos. O exemplo seguinte pressup\u00f5e que o ouvinte e o caminho j\u00e1 estejam definidos na configura\u00e7\u00e3o do ficheiro.<\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copiar c\u00f3digo<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copiado<\/span><span data-wh-copy-fallback hidden>C\u00f3digo destacado \u2013 por favor, copie<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-bash\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">curl -i http:\/\/127.0.0.1:8088\/stub_status<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Espera-se uma resposta HTTP bem-sucedida com dados de estado como <strong style=\"font-weight:700;color:inherit\">Texto<\/strong>, e n\u00e3o como JSON. Em caso de erro, o c\u00f3digo de estado e os registos do NGINX ajudam a identificar a origem do problema. No entanto, uma consulta local bem-sucedida apenas demonstra que esta via de acesso funciona: n\u00e3o prova que nenhuma outra configura\u00e7\u00e3o torne o ponto final acess\u00edvel a partir do exterior. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"werte-und-raten\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"werte-und-raten\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Ler valores de estado e calcular taxas<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A sa\u00edda combina os estados atuais das liga\u00e7\u00f5es com valores acumulados. Para a interpreta\u00e7\u00e3o, esta distin\u00e7\u00e3o \u00e9 mais importante do que o valor absoluto de um \u00fanico valor: Um <strong style=\"font-weight:700;color:inherit\">valor atual<\/strong> descreve o estado no momento da consulta; um contador total indica os eventos contabilizados at\u00e9 esse momento. A tabela apresenta os campos individuais e os erros t\u00edpicos. <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Campos de estado \u00abstub\u00bb e a sua classifica\u00e7\u00e3o\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">Campos de estado \u00abstub\u00bb e a sua classifica\u00e7\u00e3o<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Campo<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Tipo<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Significado<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Interpreta\u00e7\u00e3o errada comum<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Liga\u00e7\u00f5es ativas<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">valor atual<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Liga\u00e7\u00f5es ativas de clientes, incluindo as em espera<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Valor direto para a utiliza\u00e7\u00e3o da CPU ou da capacidade<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Leitura<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">valor atual<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Liga\u00e7\u00f5es ao ler o cabe\u00e7alho da solicita\u00e7\u00e3o<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">N\u00famero total de pedidos recebidos<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Escrita<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">valor atual<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Liga\u00e7\u00f5es no estado de processamento de respostas ou de grava\u00e7\u00e3o<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Em cada liga\u00e7\u00e3o, s\u00e3o enviados bytes pares<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Em espera<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">valor atual<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Liga\u00e7\u00f5es de cliente inativas que aguardam uma nova solicita\u00e7\u00e3o<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Por si s\u00f3, constitui uma prova de sobrecarga<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">aceita<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Contador total<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Total de liga\u00e7\u00f5es de clientes aceites<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Liga\u00e7\u00f5es atualmente abertas<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">tratado<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Contador total<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Total de liga\u00e7\u00f5es processadas<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">N\u00famero de respostas HTTP bem-sucedidas<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">pedidos<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Contador total<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Total de pedidos de clientes registados<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Solicita\u00e7\u00f5es atuais por segundo<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Do contador <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">requests<\/code> \u00e9 poss\u00edvel calcular uma m\u00e9dia <strong style=\"font-weight:700;color:inherit\">Taxa de consultas<\/strong> Calcular para um intervalo: subtrai o primeiro valor do segundo e divide a diferen\u00e7a pelos segundos decorridos. Exemplo ilustrativo de c\u00e1lculo, n\u00e3o se trata de uma medi\u00e7\u00e3o: se o valor aumentar de 12 000 para 12 600 em 60 segundos, 600 dividido por 60 resulta numa m\u00e9dia de 10 pedidos por segundo.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Esta m\u00e9dia n\u00e3o indica nem o pico mais elevado a curto prazo nem quais as URLs que foram acedidas. Anota, para cada acesso, a hora e a inst\u00e2ncia consultada. Se o contador diminuir ou se alternares entre inst\u00e2ncias, n\u00e3o deves interpretar a diferen\u00e7a simples como taxa sem a verificar; inicia uma nova s\u00e9rie de compara\u00e7\u00e3o para a inst\u00e2ncia em quest\u00e3o.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se estiveres a comparar intervalos de dura\u00e7\u00e3o diferente, utiliza sempre o tempo efetivamente decorrido, em vez do intervalo de consulta previsto. Por exemplo, uma consulta atrasada de dois minutos requer um divisor diferente do de uma consulta ap\u00f3s um minuto. Um per\u00edodo de an\u00e1lise mais longo suaviza mais as flutua\u00e7\u00f5es de curto prazo; os intervalos curtos tornam as altera\u00e7\u00f5es mais vis\u00edveis, mas aumentam a propor\u00e7\u00e3o de consultas de estado.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A pr\u00f3pria consulta de estado \u00e9 tamb\u00e9m um pedido HTTP e tem um impacto ligeiro nos contadores monitorizados. Isto torna-se particularmente significativo quando o tr\u00e1fego \u00e9 muito baixo ou quando as consultas s\u00e3o frequentes. Um intervalo de consulta regular e documentado facilita a considera\u00e7\u00e3o desses fatores de monitoriza\u00e7\u00e3o na interpreta\u00e7\u00e3o dos resultados.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">No caso de v\u00e1rias inst\u00e2ncias, calcula-se primeiro a taxa a partir dos valores sucessivos de cada inst\u00e2ncia individual. S\u00f3 depois \u00e9 que as taxas para per\u00edodos compar\u00e1veis podem ser agrupadas. Se faltar um registo ou se a atribui\u00e7\u00e3o de uma inst\u00e2ncia se alterar, a lacuna resultante deve permanecer vis\u00edvel, em vez de se simular uma evolu\u00e7\u00e3o aparentemente cont\u00ednua.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"betrieb-fehlersuche\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"betrieb-fehlersuche\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Analisar erros e limites<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se o ponto final de estado responder com um c\u00f3digo HTTP 403, verifique primeiro o endere\u00e7o de origem que chega efetivamente ao NGINX e as regras de acesso da localiza\u00e7\u00e3o. <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">allow<\/code> e <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">deny<\/code> s\u00e3o avaliadas por ordem, at\u00e9 \u00e0 primeira correspond\u00eancia. As regras pr\u00f3prias do local substituem, se for o caso, as regras herdadas; n\u00e3o as complementam automaticamente. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">No caso de um erro HTTP 404, a investiga\u00e7\u00e3o deve come\u00e7ar noutro ponto: a porta e o listener, o caminho solicitado e o bloco de servidor selecionado est\u00e3o corretos? Verifique tamb\u00e9m se a configura\u00e7\u00e3o pretendida est\u00e1 efetivamente ativa ap\u00f3s a atualiza\u00e7\u00e3o. Uma chamada local bem-sucedida numa porta ou caminho diferente n\u00e3o prova que a localiza\u00e7\u00e3o pretendida tenha sido acedida.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se n\u00e3o for obtida qualquer resposta HTTP, distingue a acessibilidade do listener de uma resposta com estado de erro. Verifique, em primeiro lugar, o endere\u00e7o, a porta e o espa\u00e7o de rede do processo que est\u00e1 a efetuar a consulta, bem como o estado do servi\u00e7o. S\u00f3 quando for estabelecida uma liga\u00e7\u00e3o ao listener correto \u00e9 que o estado HTTP e a localiza\u00e7\u00e3o selecionada ajudam a restringir ainda mais a an\u00e1lise.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para a an\u00e1lise cont\u00ednua de erros, vale a pena comparar os contadores globais <strong style=\"font-weight:700;color:inherit\">aceita e trata<\/strong>. Normalmente, s\u00e3o iguais. Se a diferen\u00e7a entre eles aumentar, pode estar em causa um limite de recursos atingido; no entanto, a compara\u00e7\u00e3o dos contadores, por si s\u00f3, n\u00e3o revela nem a causa concreta nem o n\u00famero de pedidos HTTP rejeitados. Por isso, inclua os registos de erros e a configura\u00e7\u00e3o na investiga\u00e7\u00e3o. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Uma diferen\u00e7a j\u00e1 existente indica, numa primeira fase, apenas a diferen\u00e7a entre os dois contadores totais. Para avaliar se a situa\u00e7\u00e3o se alterou durante o per\u00edodo de observa\u00e7\u00e3o, compara essa diferen\u00e7a ao consultar a mesma inst\u00e2ncia v\u00e1rias vezes. Regista o per\u00edodo em quest\u00e3o, para que possas procurar as entradas de registo e os eventos operacionais relevantes. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A diretiva <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">worker_connections<\/code> limita as liga\u00e7\u00f5es por trabalhador, n\u00e3o apenas as liga\u00e7\u00f5es de cliente. Isto inclui, por exemplo, tamb\u00e9m as liga\u00e7\u00f5es a servidores proxy; al\u00e9m disso, os limites dos descritores de ficheiros podem impor restri\u00e7\u00f5es. O n\u00famero de liga\u00e7\u00f5es ativas dividido pelo n\u00famero de trabalhadores vezes <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">worker_connections<\/code> Por conseguinte, n\u00e3o \u00e9 poss\u00edvel obter uma avalia\u00e7\u00e3o fi\u00e1vel da utiliza\u00e7\u00e3o da capacidade. Em vez disso, verifica os limites reais e o restante consumo de recursos no contexto. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Uma altera\u00e7\u00e3o dos limites de liga\u00e7\u00e3o n\u00e3o deve basear-se apenas num valor de estado elevado. Verifique primeiro se um limite foi efetivamente atingido e quais os outros recursos ou liga\u00e7\u00f5es a montante envolvidos. Planeie eventuais altera\u00e7\u00f5es em conjunto com a monitoriza\u00e7\u00e3o de erros e tempos de resposta e verifique-as de acordo com o procedimento operacional previsto. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"verlauf-diagnose\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"verlauf-diagnose\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Classificar os processos e os problemas a montante<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Uma \u00fanica consulta de estado mostra apenas um momento espec\u00edfico. Por outro lado, consultas repetidas a intervalos fixos ajudam a identificar se os estados de liga\u00e7\u00e3o aumentam para al\u00e9m de um n\u00edvel normal ou se voltam a diminuir ap\u00f3s um pico. Registe v\u00e1rias inst\u00e2ncias do NGINX separadamente e identifique qual a inst\u00e2ncia correspondente a cada s\u00e9rie temporal; caso contr\u00e1rio, as mudan\u00e7as entre pontos finais podem distorcer a evolu\u00e7\u00e3o.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Um alto <strong style=\"font-weight:700;color:inherit\">Valor de espera<\/strong> descreve liga\u00e7\u00f5es de clientes em espera, atualmente inativas. Por si s\u00f3, n\u00e3o constitui ind\u00edcio de sobrecarga: no caso de liga\u00e7\u00f5es reutilizadas, os clientes podem estar \u00e0 espera de novas solicita\u00e7\u00f5es. Um aumento torna-se mais significativo quando o comparas com os tempos de resposta, erros e m\u00e9tricas de recursos relativos ao mesmo per\u00edodo. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Fica <strong style=\"font-weight:700;color:inherit\">Escrita<\/strong> Se o tempo de resposta permanecer elevado durante um per\u00edodo prolongado, analise tanto os tempos de upstream como o comportamento dos clientes. Este estado n\u00e3o significa que estejam a ser enviados bytes de forma cont\u00ednua; pode tamb\u00e9m incluir o tempo de espera por uma resposta de upstream. O estado \u00abStub\u00bb n\u00e3o identifica nem o servi\u00e7o backend afetado nem a causa de um atraso. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para a identifica\u00e7\u00e3o, s\u00e3o \u00fateis dados complementares: os registos de acesso e os tempos de upstream registados mostram quais as solicita\u00e7\u00f5es e os backends que se destacam; os registos de erros fornecem indica\u00e7\u00f5es sobre liga\u00e7\u00f5es falhadas. No caso de press\u00e3o na CPU ou na mem\u00f3ria, s\u00e3o necess\u00e1rias m\u00e9tricas de sistema adequadas. Se o estabelecimento repetido de liga\u00e7\u00f5es ao backend estiver a afetar a an\u00e1lise, o artigo sobre <a href=\"https:\/\/webhosting.de\/pt\/configurar-de-forma-ideal-o-keepalive-do-upstream-do-nginx-em-rede-de-proxy-reverso\/\">Keepalive do Upstream do NGINX<\/a> a configura\u00e7\u00e3o de liga\u00e7\u00f5es upstream reutiliz\u00e1veis.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"monitoring-entscheidung\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"monitoring-entscheidung\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Do estado \u00e0 monitoriza\u00e7\u00e3o<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Para um diagn\u00f3stico pontual, pode ser suficiente uma consulta de estado local protegida. Esta consulta indica quais os valores de base que a inst\u00e2ncia consultada est\u00e1 a reportar nesse momento, mas n\u00e3o guarda ela pr\u00f3pria qualquer hist\u00f3rico. Se pretender comparar evolu\u00e7\u00f5es ou ser notificado em caso de anomalias persistentes, necessita de um registo regular e de um sistema para s\u00e9ries temporais e alertas. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">O oficial <strong style=\"font-weight:700;color:inherit\">Exportador do NGINX para o Prometheus<\/strong> Existe um componente separado para isso: ele recupera o estado do stub e disponibiliza os dados como m\u00e9tricas do Prometheus. O Prometheus acede, em seguida, ao ponto final do exportador. Planeia a acessibilidade e as restri\u00e7\u00f5es de acesso para ambos os caminhos, ou seja, tanto para o ponto final de estado como para a sa\u00edda de m\u00e9tricas do exportador. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail2\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e-1024x683.webp\" class=\"wp-image-22086\" alt=\"Ilustra\u00e7\u00e3o gerada por IA de tr\u00eas esta\u00e7\u00f5es distintas para o Status-Endpoint, o Exporter e o Prometheus.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/nginx-exporter-prometheus-abruf-496e617b-detail2-a8f948640e.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail2\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">Ilustra\u00e7\u00e3o gerada por IA: o ponto final de estado e o exportador s\u00e3o componentes separados, cujos percursos de acesso devem ser protegidos.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Durante a configura\u00e7\u00e3o, registe qual o exportador que acede a cada inst\u00e2ncia do NGINX e a partir de onde o Prometheus acede ao exportador. Especialmente no caso de contentores separados, trata-se de dois percursos de rede diferentes. Por isso, o facto de um ponto final do exportador estar acess\u00edvel n\u00e3o substitui, por si s\u00f3, a verifica\u00e7\u00e3o de se o exportador consegue, por sua vez, aceder com sucesso \u00e0 p\u00e1gina de estado correta. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A recolha adicional n\u00e3o transforma os valores de base em m\u00e9tricas detalhadas sobre tempos de resposta ou classes de estado HTTP. Para an\u00e1lises relativas a URLs lentas, respostas de erro ou liga\u00e7\u00f5es a montante espec\u00edficas, s\u00e3o necess\u00e1rios registos de acesso adequados e outros dados de telemetria. Tamb\u00e9m a an\u00e1lise mais abrangente <strong style=\"font-weight:700;color:inherit\">API do NGINX Plus<\/strong> \u00c9 necess\u00e1rio distinguir o \u00abStub Status\u00bb do NGINX Open Source; a sua disponibilidade e configura\u00e7\u00e3o n\u00e3o s\u00e3o intercambi\u00e1veis.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Seleciona dados adicionais de acordo com a quest\u00e3o espec\u00edfica: para uma taxa de pedidos crescente, basta, numa primeira fase, a compara\u00e7\u00e3o temporal do contador. Se, por outro lado, se tratar de respostas lentas ou de um determinado servi\u00e7o de backend, precisas de dados de lat\u00eancia e de upstream correspondentes ao per\u00edodo em quest\u00e3o. A p\u00e1gina de estado pode servir de ponto de partida para uma investiga\u00e7\u00e3o, mas n\u00e3o \u00e9, por si s\u00f3, suficiente para identificar a causa. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Os limiares de alarme devem basear-se no comportamento normal da respetiva inst\u00e2ncia e nos objetivos do servi\u00e7o, e n\u00e3o num valor geral para \u00abWaiting\u00bb ou \u00abWriting\u00bb. Compare as anomalias com as lat\u00eancias, os erros e os recursos dispon\u00edveis e verifique se um alarme \u00e9, de facto, motivo para agir. Desta forma, um \u00fanico valor de contador torna-se um motivo para uma investiga\u00e7\u00e3o espec\u00edfica, em vez de um diagn\u00f3stico precipitado.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ao planear os alarmes, tem tamb\u00e9m em conta a falha na via de recolha de dados: a falta de dados n\u00e3o \u00e9 o mesmo que zero pedidos ou zero liga\u00e7\u00f5es. Uma verifica\u00e7\u00e3o separada da acessibilidade ajuda a distinguir uma consulta falhada de uma situa\u00e7\u00e3o de atividade efetivamente baixa. Defina tamb\u00e9m quem deve tratar de um alarme e quais os dados adicionais que devem estar dispon\u00edveis para o diagn\u00f3stico.<\/p>\n<\/section><section class=\"wh-sources\" style=\"margin:40px 0 0;padding:24px 0 0;border-top:1px solid #dce5e9;color:#596b7b;font-size:14px;line-height:1.65\"><h2 style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Fontes e estado atual dos conhecimentos<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Estado da pesquisa: <time datetime=\"2026-11-04\">2026-11-04<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Data da pesquisa e vers\u00e3o: 4 de novembro de 2026. A diretiva `stub_status` j\u00e1 n\u00e3o requer nenhum argumento desde o NGINX 1.7.5; a disponibilidade do m\u00f3dulo e o ficheiro bin\u00e1rio utilizado dependem da instala\u00e7\u00e3o.<\/p><div class=\"wh-source-urls\"><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/nginx.org\/en\/docs\/http\/ngx_http_stub_status_module.html?from=20423&amp;from_column=20423<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/github.com\/nginx\/nginx-prometheus-exporter<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/mailman.nginx.org\/pipermail\/nginx\/2015-February\/046679.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/nginx.org\/en\/docs\/switches.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/nginx.org\/en\/docs\/http\/ngx_http_access_module.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/nginx.org\/en\/docs\/ngx_core_module.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/nginx.org\/en\/docs\/http\/ngx_http_api_module.html<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>O NGINX Stub Status apresenta as liga\u00e7\u00f5es e os contadores de pedidos em formato de texto. Veja como configurar o ponto final de forma segura, interpretar os valores e, se necess\u00e1rio, implementar um sistema de monitoriza\u00e7\u00e3o.<\/p>","protected":false},"author":1,"featured_media":22084,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[834],"tags":[],"class_list":["post-22079","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-plesk-webserver-plesk-administration-anleitungen"],"acf":[],"_links":{"self":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts\/22079","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/comments?post=22079"}],"version-history":[{"count":4,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts\/22079\/revisions"}],"predecessor-version":[{"id":22087,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts\/22079\/revisions\/22087"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/media\/22084"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/media?parent=22079"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/categories?post=22079"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/tags?post=22079"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}