haproxy/doc
Aurelien DARRAGON cbebdb4ba8 MEDIUM: flt_http_comp: split "compression" filter in 2 distinct filters
Existing "compression" filter is a multi-purpose filter that will try
to compress both requests and responses according to "compression"
settings, such as "compression direction".

One of the pre-requisite work identified to implement decompression
filter is that we needed a way to manually define the sequence of
enabled filters to chain them in the proper order to make
compression and decompression chains work as expected in regard
to the intended use-case.

Due to the current nature of the "compression" filter this was not
possible, because the filter has a combined action as it will try
to compress both requests and responses, and as we are about to
implement "filter-sequence" directive, we will not be able to
change the order of execution of the compression filter between
requests and responses.

A possible solution we identified to solve this issue is to split the
existing "compression" filter into 2 distinct filters, one which is
request-oriented, "comp-req", and another one which is response-oriented
"comp-res". This is what we are doing in this commit. Compression logic
in itself is unchanged, "comp-req" will only aim to compress the request
while "comp-res" will try to compress the response. Both filters will
still be invoked on request and responses hooks, but they only do their
part of the job.

From now on, to compress both requests and responses, both filters have
to be enabled on the proxy. To preserve original behavior, the "compression"
filter is still supported, what it does is that it instantiates both
"comp-req" and "comp-res" filters implicitly, as the compression filter is
now effectively split into 2 separate filters under the hood.

When using "comp-res" and "comp-req" filters explicitly, the use of the
"compression direction" setting is not relevant anymore. Indeed, the
compression direction is assumed as soon as one or both filters are
enabled. Thus "compression direction" is kept as a legacy option in
order to configure the "compression" generic filter.

Documentation was updated.
2026-03-06 13:55:31 +01:00
..
design-thoughts CLEANUP: assorted typo fixes in the code and comments 2025-04-02 11:12:20 +02:00
internals DOC: internals: addd mworker V3 internals 2026-02-04 16:39:44 +01:00
lua-api CLEANUP: assorted typo fixes in the code, commits and doc 2025-07-10 19:49:48 +02:00
51Degrees-device-detection.txt DOC: 51d: updated 51Degrees repo URL for v3.2.10 2023-11-23 16:26:13 +01:00
acl.fig
coding-style.txt DOC: fix typos in the documentation files 2026-01-20 08:15:28 +01:00
configuration.txt MEDIUM: flt_http_comp: split "compression" filter in 2 distinct filters 2026-03-06 13:55:31 +01:00
cookie-options.txt
DeviceAtlas-device-detection.txt DOC: deviceatlas build clarifications 2025-07-03 09:08:06 +02:00
gpl.txt
haproxy.1 DOC: add description of pidfile in master-worker mode 2020-08-26 18:40:53 +02:00
HAProxyCommunityEdition_60px.png DOC: replace the README by a markdown version 2024-05-30 13:53:46 +02:00
haterm.txt MINOR: haterm: add long options for QUIC and TCP "bind" settings 2026-02-20 12:00:34 +01:00
intro.txt DOC: fix typos in the documentation files 2026-01-20 08:15:28 +01:00
lgpl.txt
linux-syn-cookies.txt
lua.txt [RELEASE] Released version 3.1-dev6 2024-08-21 17:50:03 +02:00
management.txt MINOR: cli: implement wait on be-removable 2026-03-02 14:08:30 +01:00
netscaler-client-ip-insertion-protocol.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
network-namespaces.txt MAJOR: namespace: add Linux network namespace support 2014-11-21 07:51:57 +01:00
peers-v2.0.txt MEDIUM: stick-tables: add a new stored type for glitch_cnt and glitch_rate 2024-02-08 15:51:49 +01:00
peers.txt CLEANUP: assorted typo fixes in the code and comments 2022-12-07 09:08:18 +01:00
proxy-protocol.txt DOC: proxy-proto: underline the packed attribute for struct pp2_tlv_ssl 2026-02-11 14:46:55 +01:00
queuing.fig
regression-testing.txt DOC: reg-tests: update VTest upstream link in the starting guide 2026-01-26 13:56:13 +01:00
seamless_reload.txt CLEANUP: removed obsolete examples an move a few to better places 2019-06-15 21:25:06 +02:00
SOCKS4.protocol.txt MEDIUM: connection: Upstream SOCKS4 proxy support 2019-05-31 17:24:06 +02:00
SPOE.txt CLEANUP: assorted typo fixes in the code, commits and doc 2025-04-03 11:37:25 +02:00
WURFL-device-detection.txt CONTRIB: move src/wurfl.c and contrib/wurfl to addons/wurfl 2021-04-02 17:48:42 +02:00