This module requires the service of mod_proxy
. It provides support for the tunnelling of web socket connections to a backend websockets server. The connection is automatically upgraded to a websocket connection:
Upgrade: WebSocket Connection: Upgrade
Proxying requests to a websockets server like echo.websocket.org
can be done using the ProxyPass
directive:
ProxyPass "/ws2/" "ws://echo.websocket.org/" ProxyPass "/wss2/" "wss://echo.websocket.org/"
Proxying both HTTP and websockets at the same time can be done by specifying the websockets ProxyPass
directive before the HTTP directive:
ProxyPass "/" "ws://backend.example.com:9080/" ProxyPass "/" "http://backend.example.com:9080/"
Load balancing for multiple backends can be achieved using mod_proxy_balancer
.
The module can also be used to upgrade to other protocols than WebSocket, by setting the upgrade parameter in the ProxyPass
directive to some custom protocol name. Special upgrade=NONE
and upgrade=ANY
values may be used for testing/forcing the upgrade but they are not recommended in production for security reasons. NONE
means that the check for the header is omitted but still the upgrade/tunneling to WebSocket always happens. ANY
means that the upgrade/tunneling will happen using any protocol asked by the client.
This directive instructs the server to try to create an asynchronous tunnel. If the current MPM does not support the necessary features, a synchronous tunnel is used.
NoteAsync support is experimental and subject to change.
ProxyWebsocketAsyncDelay Directive ¶If ProxyWebsocketAsync
is enabled, this directive controls how long the server synchronously waits for more data. The timeout is considered in seconds by default, but it is possible to increase the time resolution to milliseconds adding the ms suffix.
Async support is experimental and subject to change.
ProxyWebsocketIdleTimeout Directive ¶ Description: Sets the maximum amount of time to wait for data on the websockets tunnel Syntax:ProxyWebsocketIdleTimeout num[ms]
Default: ProxyWebsocketIdleTimeout 0
Context: server config, virtual host Status: Extension Module: mod_proxy_wstunnel
This directive imposes a maximum amount of time for the tunnel to be left open while idle. The timeout is considered in seconds by default, but it is possible to increase the time resolution to milliseconds adding the ms suffix.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.3