Cette traduction fournie par StrongLoop / IBM.
Il se peut que ce document soit obsolète par rapport à la documentation en anglais. Pour connaître les mises à jour les plus récentes, reportez-vous à la documentation en anglais.Lorsque vous exécutez une application Express derrière un proxy, affectez à la variable d’application trust proxy
l’une des valeurs indiquées dans le tableau suivant, en utilisant app.set().
L’exécution de l’application n’échouera pas si la variable d’application trust proxy
n’est pas définie, mais l’adresse IP du proxy sera enregistrée de manière incorrecte en tant qu’adresse IP du client.``
Type | Valeur |
---|---|
Booléen |
Si la valeur est |
Adresses IP |
Adresse IP, sous-réseau ou tableau d’adresses IP et de sous-réseaux auxquels faire confiance. La liste suivante montre les noms de sous-réseau préconfigurés :
Vous pouvez définir les adresses IP de l’une des manières suivantes :
S’ils sont spécifiés, les sous-réseaux ou les adresses IP sont exclus du processus d’identification d’adresse, et l’adresse IP sans confiance la plus proche du serveur d’applications est identifiée comme étant l’adresse IP du client. |
Numérique |
Approuve le |
Fonction |
Implémentation de confiance personnalisée. N’utilisez cette option que si vous êtes sûr de vous.
|
La définition d’une valeur autre que false
trust proxy
entraîne trois modifications importantes :
La valeur de req.hostname est dérivée de l’ensemble de valeurs indiqué dans l’en-tête X-Forwarded-Host
, qui peut être défini par le client ou par le proxy.
X-Forwarded-Proto
peut être défini par le proxy inverse pour indiquer à l’application s’il s’agit de https
ou de http
, voire d’un nom non valide. Cette valeur est reflétée par req.protocol.
Les valeurs req.ip et req.ips sont renseignées avec la liste des adresses provenant de X-Forwarded-For
.
Le paramètre trust proxy
est implémenté à l’aide du package proxy-addr. Pour plus d’informations, consultez la documentation associée.