error_page & cookie
Denis Gabaidulin
sherman at oemdesign.ru
Thu Aug 16 20:15:17 MSD 2007
Доброго времени суток.
У меня есть следующая конфигурация.
location /index.php {
add_header Cache-Control no-cache,no-store;
set $original_qs $query_string;
if ($query_string ~* "c=([0-9]{1,6})(\;b=[0-2])?$") {
rewrite (.+) /hit last;
}
}
# handle hit
location /hit {
include conf/fastcgi_params;
fastcgi_param PATH_TRANSLATED /var/www/stinger/utils/counter.php;
fastcgi_pass unix:/var/run/php-cgi/php-cgi.sock;
fastcgi_intercept_errors on;
error_page 501 =200 /continue;
}
location /continue {
internal;
set $img_content_type 15;
if ($http_accept ~* "image\/\*") {
set $img_content_type 1;
}
if ($http_accept ~* "\*\/\*") {
set $img_content_type 1;
}
if ($http_accept ~* "image\/gif") {
set $img_content_type 1;
}
if ($original_qs ~* "c=([0-9]{1,6})(\;b=[0-2])?$") {
set $client $1;
rewrite (.+) "/${client}_${img_content_type}" last;
}
}
# TODO: move all headers to memcached;
# gif
location ~* "/[0-9]{1,6}_1$" {
add_header Cache-Control no-cache,no-store;
default_type image/gif;
set $memcached_key "$uri?$args";
memcached_pass localhost:11211;
# handle 404
if ($content_length = "") {
rewrite (.*) /banner.php?$original_qs last;
}
}
# generate banner on the fly
location /banner.php {
include conf/fastcgi_params;
fastcgi_param PATH_TRANSLATED /var/www/stinger/src/web/banner.php;
fastcgi_pass unix:/var/run/php-cgi/php-cgi.sock;
}
В location "hit" у меня срабатывает php скрипт, и выдает заголовки:
Set-Cookie: ...
HTTP/1.1 501 Not Implemented
Проблема в том, что cookie дальше не передается, и соответсвенно
клиенту уже не приходит :-(
Как-нибудь можно передать в данном случае заголовок Cookie ?
p.s. Вместо 501 пробовал разные варианты, результат тот же :-(
More information about the nginx-ru
mailing list