HTTP Listeners
HTTP Listeners allow you to create custom HTTP listeners on specific ports, enabling Otoroshi to serve traffic on multiple ports with different protocol configurations. Each listener can be configured independently for TLS, HTTP/1.1, HTTP/2, H2C, and HTTP/3 support.
UI page
You can find all HTTP listeners here
Properties
id: unique identifier of the HTTP listenername: display name of the listenerdescription: description of the listenertags: list of tags associated to the listenermetadata: list of metadata associated to the listenerconfig: the listener configuration (see below)
Configuration
enabled: is the listener enabledexclusive: if enabled, this listener will only handle routes that are explicitly bound to it. Routes not bound to this listener will not be served on its porttls: enable TLS/HTTPS on this listener (default: true)http1: enable HTTP/1.1 protocol support (default: true)http2: enable HTTP/2 protocol support (default: true)h2c: enable H2C (HTTP/2 Cleartext, without TLS) protocol support (default: false)http3: enable HTTP/3 protocol support (default: false)port: the port on which the listener will accept connections (default: 7890)exposedPort: the externally exposed port, useful when running behind a load balancer or inside a container (default: 7890)host: the host address to bind to (default:0.0.0.0)accessLog: enable access logging for this listener (default: false)clientAuth: mTLS client authentication mode. Possible values areNone,Want, andNeed(default:None)
JSON example
{
"id": "http-listener_abc123",
"name": "My custom listener",
"description": "A custom HTTPS listener on port 9443",
"tags": [],
"metadata": {},
"config": {
"enabled": true,
"exclusive": false,
"tls": true,
"http1": true,
"http2": true,
"h2c": false,
"http3": false,
"port": 9443,
"exposedPort": 9443,
"host": "0.0.0.0",
"accessLog": false,
"clientAuth": "None"
}
}
Learn more
For detailed information about setting up HTTP listeners, binding routes, and using static vs dynamic listeners, see Custom HTTP Listeners.
You can also check:
- HTTP3 support for HTTP/3 protocol configuration
- Alternative HTTP server for information about the Netty-based HTTP server