Можно ли настроить кэш на длительный срок (день и больше)
n1kser
nginx-forum at nginx.us
Thu Dec 6 08:50:57 UTC 2012
Цель убрать нагрузку на сервер кэшируя страницы на длительный срок и при
изменениях обновлять затрагиваемые страницы. где то мельком нарыл что nginx
для этих целей не подходит
В данный момент при любых больших параметрах кэш не держится больше 20ти
минут
proxy_cache_valid 1d;
proxy_cache_path keys_zone:
proxy_cache_path /usr/local/etc/nginx/cache levels=1:2 keys_zone=cache:1440m
max_size=300G;
proxy_cache_path /usr/local/etc/nginx/ssi_cache levels=1:2
keys_zone=ssi_cache:1440m max_size=1G;
proxy_temp_path /usr/local/etc/nginx/proxy 1 2;
proxy_ignore_headers Expires Cache-Control;
proxy_cache_use_stale error timeout invalid_header http_502;
proxy_cache_bypass $http_x_update_cache;
server {
...
listen 80;
location /get_user_info/ {
proxy_pass http://backend/ssi/get_user_info.php;
proxy_pass_header Cookie;
proxy_cache ssi_cache;
proxy_cache_valid 200 3h;
proxy_cache_use_stale updating error timeout
invalid_header http_500 http_502 http_503 http_504 http_404;
proxy_cache_key
"$scheme$proxy_host$uri$is_args$cookie_session";
}
location / {
proxy_cache cache;
proxy_cache_methods POST;
proxy_cache_key
"$scheme$host$request_uri$request_body";
proxy_cache_valid 1d;
proxy_cache_valid 404 1m;
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_next_upstream error timeout invalid_header
http_500;
proxy_connect_timeout 120;
proxy_read_timeout 180;
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,233630,233630#msg-233630
Подробная информация о списке рассылки nginx-ru