Opened 8 years ago
Closed 8 years ago
#1109 closed defect (invalid)
sub_filter, with proxy_pass and Accept-Encoding: gzip
Reported by: | Дилян Палаузов | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 1.10.2 |
Component: | nginx-core | Version: | 1.10.x |
Keywords: | Cc: | ||
uname -a: | |||
nginx -V: |
nginx version: nginx/1.10.1
built by gcc 6.2.1 20161011 (GCC) configure arguments: --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx/nginx.log --without-poll_module --without-select_module --with-http_sub_module --http-log-path=/var/log/nginx--without-http_ssi_module --without-http_uwsgi_module --without-http_scgi_module --without-http_upstream_ip_hash_module --without-http_split_clients_module --without-http_empty_gif_module |
Description
My configuration file:
events {
worker_connections 1024;
}
http {
access_log /var/log/nginx/access.log;
server {
listen *:444;
location /.well-known {
sub_filter mail.aegee.org:8081 BBBB;
sub_filter_once off;
proxy_pass http://mail.aegee.org:8081;
proxy_pass_request_headers on;
}
}
}
When I visit http://mail.aegee.org:444/.well-known and send "Accept-Encoding: gzip", the BBBB replacement does not takes place. But if Accept-Encoding does not contain gzip, then the substitution happens.
I expect that the substitution does happen, even when Accept-Encoding: gzip is sent.
Change History (2)
comment:1 by , 8 years ago
comment:2 by , 8 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
This is expected, sub_filter can't do replacements in a response which was gzipped by a backend.
Adding proxy_set_header Accept-Encoding ""; or disabling gzip compression in the backend does help.