Re: Изменить заголовок( и) set-cookie после получения ответа от backend'а
Богун Дмитрий
vugluskr на vugluskr.org.ua
Ср Мар 10 22:21:06 MSK 2010
В Втр, 09/03/2010 в 14:11 +0200, Богун Дмитрий пишет:
> В Втр, 09/03/2010 в 13:54 +0300, Daniel Podolsky пишет:
> > > Если мы все время будем рубать выставление куки клиентам, то как она у
> > > них будет появляться?
> > а распишите диаграмму прохождения запроса, такую, какая вам нужна. и
> > будет о чем разговаривать.
> Я кажется понял как это можно сделать, нужно просто завести "точку
> авторизации" как отдельный location и разрешить ему выдавать set-cookie.
> Нужно попробовать заработает ли оно с существующей системой, так как
> задуманно или думать дальше.
Вот что у меня получилось:
proxy_cache_path /var/cache/nginx/2.byaka.net levels= keys_zone=cache_byaka_2:32m;
server {
listen a.b.c.d;
server_name 2.byaka.net;
access_log /var/log/nginx/2.byaka-access.log generic;
error_log /var/log/nginx/2.byaka-error.log info;
root /srv/$host/www/htdocs;
expires 4h;
error_page 402 = @direct_access;
location / {
if ($cookie_PHPSESSID) {
return 402;
}
proxy_pass http://upstr_self;
proxy_set_header Host $host;
proxy_set_header Cookie "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache cache_byaka_2;
proxy_cache_valid 200 301 302 304 2m;
proxy_cache_use_stale updating error;
proxy_cache_key "$http_if_modified_since|$http_if_none_match|$host$request_uri?$args";
proxy_hide_header "Set-Cookie";
proxy_ignore_headers "Cache-Control" "Expires";
proxy_ignore_client_abort on;
}
location ~ /byaka/(login|registration) {
return 402;
}
location @direct_access {
proxy_pass http://upstr_self;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# serve static pages
location /upload/ { }
location /templates/default/js/ { }
location /templates/default/css/ { }
location /templates/default/images/ { }
location = /blank.gif { }
location = /favicon.ico { }
}
Вроде бы даже правильно работает. Ушло теститься на тестовую площадку.
Подскажите методику подсчета размера keys_zone. Можно ли где-нибудь
увидеть на сколько она используется?
Подробная информация о списке рассылки nginx-ru