I'm using Traffic Server as a non-caching reverse proxy with the proxy protocol (in/out) to serve multiple Apache HTTP server virtual hosts that listen on different ports.  Traffic Server is sitting in front listing on port 1080, and each Apache instance is on 8000, 8001, and so on.  A load balancer that handles TLS termination and IP failover is on another machine and sends the traffic to ATS also using the proxy protocol (send-proxy-v2).

Each Apache site on the local ports would have something like this for example:

RemoteIPProxyProtocol On

Traffic Server is configured as so:

CONFIG proxy.config.http.cache.http INT 0
CONFIG proxy.config.reverse_proxy.enabled INT 1
CONFIG proxy.config.url_remap.remap_required INT 1
CONFIG proxy.config.url_remap.pristine_host_hdr INT 1
CONFIG proxy.config.http.server_ports STRING 1080:pp
CONFIG proxy.config.http.proxy_protocol_allowlist STRING 10.7.0.0/16
CONFIG proxy.config.http.proxy_protocol_out INT 0

So far it's fine, except that some apps require a server side connection back to themselves and expect it to work on port 80 without the proxy protocol.

I adjust my configuration to the following:

CONFIG proxy.config.http.server_ports STRING 80:proto=http 1080:pp

Much to my disappointment it doesn't work.  Attempting to cURL on port 80 just hangs and eventually times out.  Maybe this not a supported function?  Is it possible to have one port setup to use the proxy protocol IN/OUT but only have another be just OUT?

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to