Serveur HTTP Apache Version 2.5

Apache > Serveur HTTP > Documentation > Version 2.5 > Modules

# Module Apache mod_proxy_wstunnel

Langues Disponibles: en | fr

Description: | Module pour `mod_proxy` supportant les websockets
Statut: | Extension
Identificateur de Module: | proxy_wstunnel_module
Fichier Source: | mod_proxy_wstunnel.c
Compatibilité: | Disponible à partir de la version 2.4.5 du serveur HTTP Apache

### Sommaire

Pour utiliser ce module, `mod_proxy` doit être chargé. Il fournit le support du tunnelling pour les connexions websocket vers un serveur websockets d'arrière-plan. La connexion est automatiquement promue en connexion websocket :

### Réponse HTTP

    Upgrade: WebSocket
    Connection: Upgrade

Le mandatement des requêtes vers un serveur websockets comme `echo.websocket.org` peut être configuré via la directive `ProxyPass` :

    ProxyPass "/ws2/"  "ws://echo.websocket.org/"
    ProxyPass "/wss2/" "wss://echo.websocket.org/"

La répartition de charge entre plusieurs serveurs d'arrière-plan peut être configurée via le module `mod_proxy_balancer`.

En fait, ce module permet d'accepter d'autres protocoles ; vous pouvez à cet effet utiliser le paramètre `upgrade` de la directive `ProxyPass`. La valeur NONE signifie que vous court-circuitez la consultation de l'en-tête, mais que vous autorisez quand-même WebSocket. La valeur ANY signifie que `Upgrade` va lire les en-têtes de la requête et les utilisera dans l'en-tête `Upgrade` de la réponse.

### Directives

### Traitement des bugs

- Journal des modifications de httpd
- Problèmes connus
- Signaler un bug

### Voir aussi

- `mod_proxy`
- Commentaires

## Directive ProxyWebsocketAsync ¶

Description: | Création d'un tunnel asynchrone
Syntaxe: | `ProxyWebsocketAsync ON|OFF`
Contexte: | configuration globale, serveur virtuel
Statut: | Extension
Module: | mod_proxy_wstunnel

Cette directive permet d'imposer la création d'un tunnel asynchrone. Si le module MPM utilisé ne supporte pas les fonctionnalités nécessaires, le tunnel est créé en mode synchrone.

### Note

Le support du mode asynchrone est au stade expérimental et est susceptible d'évoluer.

## Directive ProxyWebsocketAsyncDelay ¶

Description: | Temps d'attente synchrone maximum pour des données
Syntaxe: | `ProxyWebsocketAsyncDelay num[ms]`
Défaut: | `ProxyWebsocketAsyncDelay 0`
Contexte: | configuration globale, serveur virtuel
Statut: | Extension
Module: | mod_proxy_wstunnel

Si la directive `ProxyWebsocketAsync` est activée, cette directive permet de définir le temps maximum pendant lequel le serveur attendra des données en mode synchrone. Par défaut, ce temps est exprimé en secondes, mais vous pouvez le spécifier en millisecondes en utilisant le suffixe ms.

### Note

Le support du mode asynchrone est au stade expérimental et est susceptible d'évoluer.

## Directive ProxyWebsocketIdleTimeout ¶

Description: | Temps d'attente maximum pour des données sur le tunnel websockets
Syntaxe: | `ProxyWebsocketIdleTimeout num[ms]`
Défaut: | `ProxyWebsocketIdleTimeout 0`
Contexte: | configuration globale, serveur virtuel
Statut: | Extension
Module: | mod_proxy_wstunnel

Cette directive permet de définir un temps maximum pendant lequel le tunnel pourra rester ouvert et inactif. Par défaut, ce temps est exprimé en secondes, mais vous pouvez le spécifier en millisecondes en utilisant le suffixe ms.

Langues Disponibles: en | fr

## Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.