Как удалить определенные куки из ответа nginx

у меня nginx настроен как обратный прокси-сервер, и я хочу удалить определенные куки, установленные на поддерживаемом сервере (apache)

мой сайт использует много куки, которые я не могу контролировать (Expression Engine CMS, не спрашивайте меня, почему). Я хочу удалить некоторые из этих cookies (скажем, cookies A B и C) и сохранить некоторые другие (cookies D и E).

после этого я настрою nginx для ответа с кэшированным контентом, только если запрос не имеет куки.

у вас есть есть идеи, как это сделать? Спасибо

пока у меня в моем конфиге:

proxy_cache_path /opt/nginx/cache levels=1:2 keys_zone=mycache:20m max_size=1G;
proxy_temp_path /opt/nginx/tmp_cache/;
proxy_ignore_headers Expires Cache-Control Set-Cookie;
proxy_cache_use_stale error timeout invalid_header http_502;
proxy_cache_bypass $cookie_nocache;
proxy_no_cache $cookie_nocache;

...

location / {
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_cache mycache;
    proxy_cache_valid  200 302  6h;
    proxy_cache_valid  404      1m;
    proxy_pass http://x.x.x.x:8080;
}

1 ответов


хотя вы уже упоминали, что переключились на лак, чтобы выполнить то, что вы просили, правильным ответом было бы использовать headers-more-nginx-module вам же функцию лака делает (и многое другое).