GET запросы в memcache

Andrey P andreyp.kt at gmail.com
Thu Dec 18 19:43:09 MSK 2008


Приветствую!

При обращении к memcache nginx запрашивает данные по  ключу:
/search/abc/?lang=ru&q=%25D0%259C&type=person , php же сохраняет
страницу с ключом: /search/abc/?lang=ru&q=%D0%9C&type=person (ключ
берётся из $_SERVER['REQUEST_URI']). Собственно кэш перестаёт
работать.
Как это можно исправить? Заранее благодарен!


 Конфин nginx'a
 set $backend 1;

        if ($uri !~ \.) {
            rewrite ^(.+)$ /index.php break;
        }

        if ($uri ~ \.(gif|jpg|jpeg|png|js|css)$) {
            set $backend 0;
        }

        location / {
            if ($http_cookie ~* "session=([^;]+)(?:;|$)" ) {
                set $backend 0;
            }
            if ($request_method = POST) {
                set $backend 0;
            }

            if ($backend = 1) {

                add_header Content-Type "text/html; charset=utf-8";
                set $memcached_key "$request_uri";
                memcached_pass 127.0.0.1:11211;
                error_page 404 502 504 = @fallback;
                break;
            }

            root   /var/www/tv.srv/www;
            index  index.php index.html index.htm default.php;
            break;
        }

        location @fallback {
                root           /var/www/tv.srv/www;
                fastcgi_pass   127.0.0.1:8888;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  /var/www/tv.srv/www$fastcgi_script_name;
                include        fastcgi_params;
        }

-- 
С уважением,
 Andrey                          mailto:andreyp.kt at gmail.com






More information about the nginx-ru mailing list