- 
    
Problem report
 - 
    Resolution: Unresolved
 - 
    
Trivial
 - 
    None
 - 
    4.0.47, 5.0.36, 6.4.5, 7.0.0alpha3
 - 
    None
 
Any HTTP request performed by Zabbix (using libcurl) can potentially contain double headers (HTTP proxy headers + end system headers) in cases when an HTTP proxy is used. For example, using a proxy to access zabbix.com through the HTTP agent item when the HTTP proxy is enabled, gives the following result:
HTTP/1.1 200 Connection established
HTTP/2 200 
date: Fri, 11 Aug 2023 09:35:22 GMT
content-type: text/html
last-modified: Fri, 11 Aug 2023 08:01:22 GMT
vary: Accept-Encoding
access-control-allow-origin: *
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
cf-ipcountry: LV
cf-cache-status: DYNAMIC
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
server: cloudflare
content-encoding: br
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset="utf-8">...
This makes preprocessing nearly impossible as there is no clear indication when headers would contain additional information.
It is expected that Zabbix would only give the headers of end-system when HTTP proxy is used.