Не могу завести кеш в nginx/0.7.67
Дмитрий Леоненко
dmitry.leonenko на gmail.com
Пн Апр 11 13:46:17 MSD 2011
Доброго времени суток. Никак не могу понять, почему в простой конфигурации
отказывается работать кеш.
http {
...
server_tokens off;
proxy_hide_header X-Powered-By;
fastcgi_hide_header X-Powered-By;
client_header_timeout 1024;
client_body_timeout 1024;
send_timeout 9000;
proxy_read_timeout 4000;
connection_pool_size 256;
client_header_buffer_size 1k;
client_max_body_size 10m;
large_client_header_buffers 2 4k;
request_pool_size 4k;
proxy_buffers 8 32k;
proxy_buffering off;
proxy_buffer_size 32k;
server_names_hash_bucket_size 64;
output_buffers 3 16k;
postpone_output 1460;
sendfile off;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30 100;
ignore_invalid_headers off;
log_format custom '$host $uri $remote_addr [$time_local] $status
$bytes_sent [$request]';
proxy_cache_path /var/cache/nginx/cache levels=1:2
keys_zone=melco:500m inactive=15m max_size=1000m;
proxy_temp_path /var/cache/nginx/temp;
...
server {
.....
location = /rss.php {
access_log /var/log/nginx/rss.php.log custom;
proxy_cache melco;
proxy_cache_key "$host$request_uri$args";
proxy_ignore_headers "Cache-Control" "Expires";
proxy_cache_min_uses 1;
proxy_cache_valid 200 302 304 5m;
proxy_cache_use_stale http_502 http_503 http_504;
proxy_hide_header Set-Cookie;
proxy_pass http://192.168.10.102;
proxy_redirect off;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
}
...
Хидеры запроса следующие:
# curl -I http://mysite.com/rss.php
HTTP/1.1 200 OK
Server: nginx
Date: Sun, 10 Apr 2011 15:45:54 GMT
Content-Type: text/xml; charset=windows-1251
Connection: keep-alive
Keep-Alive: timeout=100
X-Powered-By: PHP/5.3.3-7+squeeze1
Pragma: no-cache
Generator: Nucleus CMS
Etag: "f263dc8eb016ffcb6d34b317b8d5a315"
Vary: Accept-Encoding
Энджи с пакетов squeeze
# nginx -V
nginx version: nginx/0.7.67
TLS SNI support enabled
configure arguments: --conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-client-body-temp-path=/var/lib/nginx/body
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi
--http-log-path=/var/log/nginx/access.log
--http-proxy-temp-path=/var/lib/nginx/proxy
--lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid
--with-debug --with-http_dav_module --with-http_flv_module
--with-http_geoip_module --with-http_gzip_static_module
--with-http_realip_module --with-http_stub_status_module
--with-http_ssl_module --with-http_sub_module --with-ipv6 --with-mail
--with-mail_ssl_module
--add-module=/tmp/buildd/nginx-0.7.67/modules/nginx-upstream-fair
При этом файлы в /var/cache/nginx/cache/ ни в /var/cache/nginx/temp никогда
не появляются. На бэкенд запросы уходят всегда.
Подскажите, в чем может быть беда?
P.S. Я привел все значимые части конфига. Больше ничего что могло бы
повлиять там нет.
З.Ы. И еще подскажите, какой логформат должен быть, что бы видеть, из кеша
запрос клиенту пошел, или от бэкенда?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20110411/57ba675e/attachment.html>
Подробная информация о списке рассылки nginx-ru