proxy_cache и куки

Igor Sysoev is at rambler-co.ru
Tue Jul 21 15:11:31 MSD 2009


On Tue, Jul 21, 2009 at 01:50:03PM +0300, Serge wrote:

> Доброго времени суток.
> 
> Столкнулся с проблемой, что при использовании proxy_cache куки на бекенд (апач) не уходят.
> Если убрать кеширование - все работает.
> 
> Что я не так делаю ?
> Ткните в нужное русло.
> 
> # nginx -V
> nginx version: nginx/0.8.5
> собран с опциями:
> --with-http_stub_status_module 
> --with-http_flv_module 
> --with-http_ssl_module 
> --with-http_dav_module 
> --with-http_sub_module 
> --with-http_realip_module 
> --with-http_gzip_static_module 
> --with-debug
> 
> 
> http {
> ...
>     proxy_cache_path cache levels=1:2  keys_zone=test:10m  inactive=30m  max_size=10m;
> ...
> }
> 
> server {
>     listen 1.2.3.4:80;
>     server_name site www.site;
> 
>     location / {
>         limit_conn byIP 5;
>         limit_req  zone=byREQ burst=10 nodelay;
>         root  /var/www;
> 
>        proxy_cache   test;
>        proxy_cache_key  "$host$uri$is_args$args";
>        proxy_cache_valid   200 5m;
>        proxy_cache_valid   400 502 503  2m;
>        proxy_cache_min_uses  2;
>        proxy_cache_use_stale error timeout  http_500  http_502 http_503;
> 
>         proxy_redirect    off;
>         proxy_set_header  Host      $host;
>         proxy_set_header  X-Real-IP   $remote_addr;
>         proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;

Нужно разрешить явно:

+         proxy_set_header  Cookie  $http_cookie;

Ну и, скорее всего, ещё добавить имена кук в proxy_cache_key.

>         proxy_pass   http://127.0.0.1:80;
>     }
>     location ~ /\.ht { deny  all; }
> }


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list