Maison >Opération et maintenance >Nginx >Comment implémenter la configuration du proxy Nginx TCP/UDP

Comment implémenter la configuration du proxy Nginx TCP/UDP

王林
王林original
2023-11-08 15:14:072252parcourir

Comment implémenter la configuration du proxy Nginx TCP/UDP

Nginx est un logiciel de serveur Web puissant qui peut non seulement gérer les requêtes du protocole HTTP/HTTPS, mais également transmettre d'autres protocoles via un proxy TCP/UDP.

Ci-dessous, nous présenterons comment implémenter la configuration du proxy TCP/UDP via Nginx et fournirons des exemples de code spécifiques.

  1. Configurer le proxy TCP

Tout d'abord, ajoutez le code suivant au fichier de configuration Nginx :

stream {
    server {
        listen        80;
        proxy_pass    backend:8080;
    }
}

Cette configuration transfère toutes les requêtes TCP du port 80 vers le port 8080 de l'hôte backend. A noter que le backend peut être une adresse IP ou le nom d'un autre serveur dans le fichier de configuration Nginx.

De plus, pour que Nginx écoute les requêtes TCP, vous devez ajouter l'option -g 'daemon off;' à la commande pour démarrer Nginx. La commande de démarrage complète est la suivante :

nginx -g 'daemon off;'
  1. Configurer le proxy UDP

Pour le proxy UDP, Nginx doit utiliser le module tiers Stream Module. Vous devez ajouter l'option --with-stream lors de la compilation de Nginx et ajouter le code suivant au fichier de configuration de Nginx :

stream {
    server {
        listen          53 udp;
        proxy_pass      backend:53;
        proxy_timeout   1s;
        proxy_responses 1;
    }
}

Cette configuration transmet toutes les requêtes du port UDP 53 au port 53 de l'hôte backend, et en même temps Définit un délai d'attente de 1 seconde et renvoie au plus un résultat de réponse.

Il est à noter que dans la configuration ci-dessus, le backend peut être une adresse IP ou le nom d'un autre serveur dans le fichier de configuration Nginx.

  1. Exemple complet

Enfin, nous fournissons un exemple complet de configuration de proxy TCP et UDP, le code est le suivant :

events {}

http {}

stream {
    server {
        listen        80;
        proxy_pass    backend:8080;
    }

    server {
        listen          53 udp;
        proxy_pass      backend:53;
        proxy_timeout   1s;
        proxy_responses 1;
    }
}

Il est à noter que le backend dans l'exemple ci-dessus peut être une adresse IP ou une configuration Nginx Fichier Les noms des autres serveurs dans .

Résumé

Grâce à l'exemple de code ci-dessus, nous avons appris comment implémenter la configuration du proxy TCP/UDP dans Nginx. Les points clés impliqués incluent l'utilisation du module Stream Module, l'ajout de mots-clés tels que Listen et proxy_pass, etc. J'espère que cet article pourra aider tout le monde à implémenter la configuration du proxy Nginx !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn