Re: Кеширование запроса

Vladimir Rusinov vladimir at greenmice.info
Sat Feb 14 11:50:49 MSK 2009


2009/2/13 Монашёв Михаил <postmaster at softsearch.ru>

> Здравствуйте, Владимир.
>
> Если на столько-то времени, то лучше всего кэшировать в мемкашеде. А
> писать в него в движке форума.


Это все понятно, в других местах у меня так все и сделано. Этот форум -
почти некоммерческий, дописывать его особенно никто не желает, но ресурсов
занимает прилично.


> Но можно и через proxy_store сохранять
> файлик на диск и по крону его удалять.
>
> А чтоб выделить именно это url можно написать вот такbt локейшны:
>
> location = /ajax.php?do=vietvbb_stats&top=vietvbb_top_posters&result=15 {
>
>                client_body_temp_path   /path/tmp;
>                root    /path/cache/;
>                error_page      404 = @fetch;
> }


Дело в том, что такой location не работает, nginx 0.6.35.


>
>
> location @fetch {
>                proxy_pass              http://forum-ip:port;
>                proxy_store             /path/cache/$request_uri;
>                proxy_temp_path         /path/proxy-tmp;
> }
>
>
>
> > Подскажите пожалуйста как мне лучше организовать кеширование
> > (пока) едиснтвенного запроса вида /ajax.php?do=vietvbb_stats
> > top=vietvbb_top_posters result=15 на N минут. Судя по статистике оно
> > кушает больше всего остального ресурсов, хотя обновляется в лучшем
> > случае раз в час.
>
> > Апстрим - патчено-перепатченый форум на invision, в который лезть не
> очень хочется.
>
> > Пока остановлился на этом:
>
> > location /ajax.php {
> >             if ($request_uri ~* "^/ajax.php\?do=vietvbb_stats\
> > top=vietvbb_top_posters\ result=15$") {
> >                     return 403;
> >             }
> >             proxy_pass http://127.0.0.1:80/ajax.php;
> > }
> > location / {
> >             proxy_pass         http://127.0.0.1:80/;
> >             proxy_redirect     off;
> > }
> > location ~*
> >
> ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js)$
> >                 root   /home/samforum/public_html;
>
> >                 access_log off;
> > }
>
>
> > подозреваю что мне нужно как-то использовать proxy_pass, но как
> > это сделать в сочетании с if, чтобы не поломать другие ajax (которые
> > кешировать не надо) не пойму.
>
>
>
>
>
> --
> С уважением,
> Монашёв Михаил, SoftSearch.ru
> mailto:postmaster at softsearch.ru
> ICQ# 166233339
> http://michael.mindmix.ru/
> Без бэкапа по жизни.
>
>
>


-- 
Vladimir Rusinov
http://greenmice.info/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20090214/a8a62620/attachment.html>


More information about the nginx-ru mailing list