Nginx Cache Valid till - Help
rajivv
nginx-forum at nginx.us
Sun Nov 14 08:10:59 MSK 2010
Hi,
I have a issue my nginx cofig is working ok just i want cache to clear
only once in 15 days.
But it is clearing everyday and new images showing on homepage ( we use
random images hence on each refresh its new)
however with nginx it needs to show same page and images etc picked from
cache.
It works ok for 24 hours then again refreshes all content...as if cache
is clear.
Here is Nginx conf
------------------------
user nginx;
worker_processes 16;
worker_rlimit_nofile 100000;
error_log /var/log/nginx/error.log crit;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
pid /var/run/nginx.pid;
events {
worker_connections 102400;
use epoll;
}
http {
proxy_cache_path /var/lib/nginx/tmp/cache1 levels=1:2
keys_zone=proxy_cache1:16m max_size=20g inactive=1d;
proxy_cache_path /var/lib/nginx/tmp/cache2 levels=1:2
keys_zone=proxy_cache2:16m max_size=40g inactive=30d;
proxy_temp_path /var/lib/nginx/tmp/proxy;
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local]
"$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log off;# /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
gzip on;
gzip_static on;
gzip_comp_level 5;
gzip_min_length 1024;
keepalive_timeout 65;
-----------------------------------
Here is cache inc
-----------------------------------
access_log off;
location / {
proxy_pass http://96.30.58.176:80;
include /etc/nginx/generic.inc;
proxy_ignore_headers "Cache-Control" "Expires";
proxy_cache_key
"$server_name$scheme$proxy_host$uri$is_args$args$cookie_sid";
proxy_cache proxy_cache1;
proxy_cache_use_stale updating error timeout invalid_header
http_500;
proxy_cache_valid 15d;
}
location ~*
^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
proxy_pass http://96.30.58.176:80;
include /etc/nginx/generic.inc;
proxy_ignore_headers "Cache-Control" "Expires";
proxy_cache_key "$server_addr:$server_port$request_uri";
proxy_cache proxy_cache2;
proxy_cache_use_stale updating error timeout invalid_header
http_500;
proxy_cache_valid 15d;
}
---------------------------------------
Here is site.conf in called conf.d called
----------------------------------------
server {
listen 96.30.58.176:8080;
server_name www.site.com;
include /etc/nginx/cache.inc;
location /nginx_status {
stub_status on;
}
if ($http_host ~* "^site\.com$"){
set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
rewrite ^/(.*)$ http://www.site.com/$1 permanent;
break;
}
}
Regards
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,150639,150639#msg-150639
More information about the nginx
mailing list