Re: Зависание nginx из-за memcached

Валентин Бартенев vbart на nginx.com
Чт Май 26 15:30:10 UTC 2016


On Thursday 26 May 2016 15:11:06 Дмитрий Андреев wrote:
> чт, 26 мая 2016 г. в 15:20, Валентин Бартенев <vbart на nginx.com>:
> 
> > On Thursday 26 May 2016 08:04:59 Vadim Osipov wrote:
> > > location /screenshot/ {
> > >     if ($request_method != GET) {
> > >       proxy_pass http://127.0.0.1:8080;
> > >       break;
> > >     }
> > >
> > >     more_clear_headers 'Content-Type';
> > >     more_clear_headers 'Cache-Control';
> >
> > Это делается с помощью proxy_hide_header.
> >
> И для случаев, когда нужно удалить header из ответа клиенту, но
> залогировать в access_log-е тоже? Ну вдруг счастье уже наступило, а я не в
> курсе.

Всегда было можно:

$ cat test.conf
events {}

http {
    log_format header '"$request_uri" "$upstream_http_x_header"';

    server {
        listen 8080;

        location / {
            proxy_pass http://127.0.0.1:8080/header;
            proxy_hide_header X-Header;

            access_log logs/headers.log header;
        }

        location /header {
            add_header X-Header $arg_v;
            return 204;
        }
    }
}
$ build/sbin/nginx -c ../test.conf
$ curl -i 127.0.0.1:8080/?v=hello
HTTP/1.1 204 No Content
Server: nginx/1.11.1
Date: Thu, 26 May 2016 15:26:11 GMT
Connection: keep-alive

$ curl -i 127.0.0.1:8080/?v=world
HTTP/1.1 204 No Content
Server: nginx/1.11.1
Date: Thu, 26 May 2016 15:26:15 GMT
Connection: keep-alive

$ cat build/logs/headers.log 
"/?v=hello" "hello"
"/?v=world" "world"

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru