Eu criei uma página do WordPress com permalink http://domain.tld/health_status para monitoramento de integridade do WordPress. É acessado com frequência, então não quero que essas solicitações apareçam no meu log de acesso.
A regra básica "reescrever" para todas as páginas do WordPress é:
location / {
try_files $uri $uri/ /index.php?q=$args;
}
Agora, no mesmo nível, tentei
location /health_status {
access_log off;
#try_files $uri $uri/ /index.php?q=$args;
}
Da nginx documentação de localização :
Literal strings match the beginning portion of the query - the most
specific match will be used
/health_status é mais específico que / , por isso, esse bloco age quando eu solicito http://domain.tld/health_status .
Com a linha try_files comentada (como acima), a solicitação não aparece no log de acesso, hurray, mas obviamente eu recebo um erro 404, porque o nginx não redireciona essa solicitação para o WordPress.
Com a linha try_files sendo ativada, um redirecionamento interno para o WordPress ' index.php ocorre e a página /health_status WordPress é mostrada no navegador. No entanto, após o redirecionamento interno, o bloco location /health_status não está mais em ação e a solicitação é encerrada no log de acesso.
Como resolver este problema de forma limpa? Agora preciso adicionar outro bloco correspondente à solicitação /index.php?q=healthstatuswhatever real que ocorre após o redirecionamento interno?
Obrigado!