Estou com um NGINX de homologação rodando e quase pronto para entrar em produção, estou tendo dificuldades com o cache, percebi que a performance com o cache ativado melhora em uns 75% a velocidade de entrega da pagina, e pra mim isso seria ideal.
No meu bloco http tem o cache ativado
proxy_cache_path /var/log/nginx/cache levels=1:2 keys_zone=STATIC:10m inactive=24h max_size=1g
o meu Server esta assim :
server {
listen 80;
server_name www.site.br site.br;
charset utf-8;
error_page 404 /404.html;
error_page 500 502 503 504 /usr/local/nginx/html/50x.html;
location = /usr/local/nginx/html/50x.html { root html; }
if ($new = 1) {
return 390;
}
error_page 390 = @newdomain;
location @newdomain {
set $subdomain "";
if ($host ~* "^(.+).site.br$") {
set $subdomain $1;
return 301 http://site.br/$subdomain;
}
}
location /teste_portal {
proxy_pass http://10.0.1.38/teste_portal;
index index.html index.htm index.php;
proxy_set_header Host $host;
proxy_cache STATIC;
proxy_cache_valid 200;
proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
error_log /var/log/nginx/site.error.log;
access_log /var/log/nginx/site.access.log;
}
}
Esse é apenas um dos meus locations, existem outros. O cache esta funcionando perfeitamente, os arquivos estão sendo criados em " /var/log/nginx/cache" e o site fica visivelmente mais rápido.
O problema e que que quando o ADMIN do WordPress faz uma alteração no site que está no servidor 10.0.1.38, como trocar uma imagem ou até mesmo editar um texto do site e salva, essa alteração não pode ser vista no site. Mais quando apago o cache manualmente, a alteração pode ser vista.
Será que alguém pode me dar uma luz?
Agradeço desde de já.
Conteúdo retirado do grupo Nginx Brasil no Facebook.
Da uma olhada nesse guia e veja o que falta: https://github.com/VisiStruct/LEMH-Server
Amigo, crie exceções na sua config de cache e adicione:
/wp-admin/|/xmlrpc.php|wp-.*.php|index.php|/feed/|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml
Esse artigo pode te ajudar:
http://nginx.blog.br/wordpress-nginx-proxy-cache-e-easyengine/
Autor:
Era o tempo de atualização.
proxy_cache STATIC;
proxy_cache_valid 200 "15s";
Adicionei 15 segundos de atualização.