proxy story, 304, сброс кэша

Budulianin nginx-forum at nginx.us
Sat Jul 12 16:57:12 UTC 2014


Все привет.

Решил попробовать proxy_store. Но возникли проблемы.
Я хочу при помощи него, кэшировать статику.

Составил конфигурацию для nginx/1.1.19:

http {
    server {
        listen 6543;

        location / {
             proxy_pass http://localhost:8080;
        }

        location /static/ {
            root               /var/cache/nginx;
            error_page         404 = /fetch$uri;
        }
        location /media/ {
            root               /var/cache/nginx;
            error_page         404 = /fetch$uri;
        }

        location /fetch/ {
            internal;
            expires max;
            proxy_set_header If-None-Match "";
            proxy_set_header If-Modified-Since "";

            proxy_pass         http://localhost:8080/;
            proxy_store        on;
            proxy_store_access user:rw group:rw all:r;
            proxy_temp_path    /var/cache/nginx/temp;

            alias              /var/cache/nginx/;
        }
    }
}

Но что-то не учтено. Файлы сохраняются, при первом запросе, с этим
нормально, при следующем запросе, браузер всё отображает
и пишет 304, как я понимаю, он при первом запросе, сохранил у себя в кэше то
что отдал ему nginx и теперь отображает это.
Но если почистить кэш браузера, то nginx ничего не отдаёт, видимо он
сравнивает дату файлов, которые у него закэшились и возвращает 304, но
браузеру нечего взять, его кэш почистили. 

Подскажите пожалуйста, что подкоректировать, чтобы nginx отдавал из файлы из
кэша, если в браузере кэш почистили?
Ну или может, как-то по другому нужно сделать?

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,251675,251675#msg-251675



Подробная информация о списке рассылки nginx-ru