location ^~ /home/somedomain/public_html/site/dontcache/ {
root /home/somedomain/public_html/site/dontcache;
expires epoch;
}
A ordem de correspondência das diretivas location
está descrita aqui
Existe um diretório no meu servidor que contém imagens que eu não quero que sejam armazenadas em cache.
O Nginx é o frontend do Apache. Eu tenho o cache ativado para recursos estáticos no nginx.conf:
server {
listen 80;
server_name www.mydomain.com mydomain.com;
location / {
root /home/somedomain/public_html/site;
proxy_pass http://backend;
include /etc/nginx/proxy.conf;
}
location ~* \.(css|js)$ {
root /home/somedomain/public_html/site;
add_header Last-Modified: $date_gmt;
expires 1y;
access_log off;
}
location ~* \.(jpg|jpeg|gif|png|ico|bmp|swf)$ {
root /home/somedomain/public_html/site;
expires max;
access_log off;
}
location ~ \.php {
proxy_pass http://backend;
include /etc/nginx/proxy.conf;
}
}
Eu tentei adicionar ao final:
location /home/somedomain/public_html/site/dontcache/ \.png {
root /home/somedomain/public_html/site/dontcache;
expires off;
}
Também tentei expires -1;
e expires 1m;
, mas tudo isso não parece funcionar.
Eu sei que é simples, mas não consigo entender por que isso não funciona para mim.
location ^~ /home/somedomain/public_html/site/dontcache/ {
root /home/somedomain/public_html/site/dontcache;
expires epoch;
}
A ordem de correspondência das diretivas location
está descrita aqui
Tente isto:
location /home/somedomain/public_html/site/dontcache/ \.png {
root /home/somedomain/public_html/site/dontcache;
proxy_no_cache 1;
}
Além disso, veja aqui: link