nginx regra de reescrever wordpress em conflito com o módulo stub_status

1

Eu tenho um problema quando eu estava tentando ativar o módulo stub_status no meu site baseado no wordpress. o seguinte é minha configuração no nginx.conf.

location /status {
stub_status on;
access_log off;
}
if (!-e $request_filename){
rewrite ^(.+)$ /index.php?q=$1 last;
} 

meu problema é que eu posso acessar a página de status se eu remover a regra de reescrever wordpress. se a regra de reescrita existir, a página de status não funcionará. alguém sabe como resolver esse problema?

    
por opps 23.12.2011 / 10:02

1 resposta

1

Na verdade, sua reescrita pertence à seção server , portanto não há chance de location /status . Então, tudo que você precisa é colocar sua condição de reescrita em outro location . P.S. Não tenho certeza de que isso está funcionando config, mas eu acho que essa idéia é entregue.

server {
  listen 80;
  server_name myserver.com;

  location /status {
    stub_status on;
    access_log off;
  }

  location ~* \.(ico|jpe?g|gif|bmp|png|js|css)$ {
    access_log off;
    expires max;
  }

  location ~* (!\.(ico|jpg|jpeg|gif|bmp|png|css|js))$ {
    if (!-e $request_filename) {
      rewrite ^/$ /index.php last;
    }
  }
}
    
por 23.12.2011 / 11:06