Sous Linux, la redirection de port fait référence à l'utilisation de Nginx pour surveiller le port. Lorsqu'une requête HTTP arrive, elle fait correspondre l'hôte et d'autres informations de la requête HTTP avec son fichier de configuration et la transmet à l'application correspondante. pour traiter la demande sans ajouter de port. Visitez le nom de domaine.
L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.
Qu'est-ce que la redirection de port
Lorsque nous créons une application de données et de téléchargement sur le serveur, l'application de données démarre le port 8001 et l'application de téléchargement démarre le port 8002. À l'heure actuelle, si nous pouvons passer
localhost:8001 //资料 localhost:8002 //下载
, mais lorsque nous accédons habituellement à l'application, nous espérons accéder au nom de domaine sans ajouter de port, c'est-à-dire que les deux applications sont accessibles via le port 80. Mais nous savons qu'un port sur le serveur ne peut être utilisé que par un seul programme. Que devons-nous faire à ce moment-là ? Une méthode courante consiste à utiliser Nginx pour la redirection de port. Le principe d'implémentation de Nginx est le suivant : utilisez Nginx pour surveiller le port 80. Lorsqu'une requête HTTP arrive, elle fera correspondre l'HOST et d'autres informations de la requête HTTP avec son fichier de configuration et la transmettra à l'application correspondante. Par exemple, lorsqu'un utilisateur visite linux.linuxmi.com, Nginx sait grâce au fichier de configuration qu'il s'agit d'une requête HTTP pour une application de données, il transmet donc la requête à l'application sur le port 8001 pour traitement. Lorsqu'un utilisateur visite m.linuxmi.com, Nginx sait grâce au fichier de configuration qu'il s'agit d'une requête HTTP pour télécharger une application, il transmet donc cette requête à l'application sur le port 8002 pour traitement. Un simple fichier de configuration Nginx (partie) est le suivant :
#配置负载均衡池 #Demo1负载均衡池 upstream linux_pool{undefined server 127.0.0.1:8001; } #Demo2负载均衡池 upstream m_pool{undefined server 127.0.0.1:8002; } #Demo1端口转发 server {undefined listen 80; server_name linux.linuxidc.com; access_log logs/linux.log; error_log logs/linux.error; #将所有请求转发给demo_pool池的应用处理 location / {undefined proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://linux_pool; } } #Demo2端口转发 server {undefined listen 80; server_name m.linuxidc.com; access_log logs/m.log; error_log logs/m.error; #将所有请求转发给demo_pool池的应用处理 location / {undefined proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://m_pool; } }
La configuration ci-dessus est implémentée :
1 Lorsque le nom de domaine visité par l'utilisateur est : http://linux.linuxidc.com, nous l'ajoutons automatiquement. La demande est transmise à l'application Tomcat avec le numéro de port 8001 pour traitement.
2. Lorsque le nom de domaine visité par l'utilisateur est : http://m.linuxidc.com, nous transmettons automatiquement la demande à l'application Tomcat avec le numéro de port 8002 pour traitement.
La mise en œuvre technique ci-dessus est la redirection de port. La redirection de port fait référence au logiciel surveillant uniformément un certain port sur un certain nom de domaine (généralement le port 80). Lorsque le nom de domaine et le port du serveur d'accès répondent aux exigences, il sera transmis au serveur Tomcat désigné pour être traité conformément aux exigences. configuration. Notre Nginx couramment utilisé dispose également d’une fonction de redirection de port.
Recommandations associées : "Tutoriel vidéo Linux"
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!