Re: двойной кэш
Slava Kokorin
slava.kokorin at gmail.com
Mon Sep 10 09:23:36 UTC 2012
10 сентября 2012 г., 10:49 пользователь koka miptpatriot
<miptpatriot at gmail.com> написал:
> Здравствуйте.
>
> На сервере есть небольшой ssd-диск и большой hdd-диск. Хочется чтобы nginx
> вначале глядел в кэш на ssd, если не найдёт там, то в кэш на hdd, если не
> найдёт там, то в обращался к апачу.
> Пока придумал только такой неэлементарный вариант:
>
> server {
> listen 80;
> location /cache {
> proxy_cache ssd;
> proxy_pass http://localhost:81;
> }
> }
>
> server {
> listen 81;
> location /cache {
> proxy_cache hdd;
> proxy_pass http://apache;
> }
> }
>
> Может можно как-то сделать это без поднятия nginx на ещё одном порту?
да, удавалось. Конфиг был при этом примерно такой (здесь только один
диск с кешем, второй можно прикрутить по аналогии):
location / {
root /cache;
try_files $uri @origin;
open_file_cache_errors off;
}
location @origin {
proxy_pass http://origin_IP;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_store on;
proxy_store_access user:rw group:rw all:r;
proxy_temp_path /cache/temp; ## On same fs where root
for fast mv
root /cache;
}
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
--
Regards,
Slava
Подробная информация о списке рассылки nginx-ru