Add support for proxy-awareness headers: X-Forwarded-For, X-Forwarded-Port, X-Forwarded-Proto, X-Forwarded-Host, and X-Request-ID
- Updated HAProxy configuration template to set all standard proxy headers for HTTP requests. - Added support for a unique request ID via `unique-id-format` and `unique-id-header` directives. - Implemented E2E tests for header validation, request correlation, and configuration correctness. - Enhanced documentation to explain usage and examples of proxy headers. - Updated CI workflows to include E2E tests for proxy headers.
This commit is contained in:
parent
4aba68dd37
commit
776f216a36
19 changed files with 480 additions and 4 deletions
|
|
@ -17,7 +17,11 @@ class HeaderEchoHandler(BaseHTTPRequestHandler):
|
|||
response = {
|
||||
'headers': headers,
|
||||
'client_ip': self.client_address[0],
|
||||
'x_forwarded_for': self.headers.get('X-Forwarded-For', 'NOT SET')
|
||||
'x_forwarded_for': self.headers.get('X-Forwarded-For', 'NOT SET'),
|
||||
'x_forwarded_host': self.headers.get('X-Forwarded-Host', 'NOT SET'),
|
||||
'x_forwarded_port': self.headers.get('X-Forwarded-Port', 'NOT SET'),
|
||||
'x_forwarded_proto': self.headers.get('X-Forwarded-Proto', 'NOT SET'),
|
||||
'x_request_id': self.headers.get('X-Request-ID', 'NOT SET')
|
||||
}
|
||||
|
||||
self.wfile.write(json.dumps(response, indent=2).encode())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue