Maison >Opération et maintenance >Nginx >Comment utiliser Nginx Proxy Manager pour implémenter l'interception et le transfert de requêtes de proxy inverse

Comment utiliser Nginx Proxy Manager pour implémenter l'interception et le transfert de requêtes de proxy inverse

WBOY
WBOYoriginal
2023-09-26 08:41:101947parcourir

如何使用Nginx Proxy Manager实现反向代理的请求拦截与转发

Comment utiliser Nginx Proxy Manager pour implémenter l'interception et le transfert de demandes de proxy inverse

Nginx Proxy Manager est un outil de gestion basé sur Nginx qui peut gérer le proxy inverse Nginx via une configuration d'interface simple. Il permet aux utilisateurs de définir des règles de proxy inverse via une interface graphique et fournit également des fonctions d'interception et de transfert de demandes pour mieux contrôler le flux des demandes. Cet article explique comment utiliser Nginx Proxy Manager pour implémenter l'interception et le transfert de requêtes, et fournit des exemples de code spécifiques.

  1. Installer Nginx Proxy Manager

Tout d'abord, nous devons installer Nginx Proxy Manager sur le serveur. Vous pouvez télécharger la dernière version du package d'installation sur le site officiel (https://nginxproxymanager.com/) et suivre son guide pour l'installer. Une fois l'installation terminée, vous pouvez accéder à l'interface de gestion via http://localhost:81. Le nom d'utilisateur et le mot de passe par défaut sont admin. admin

  1. 添加反向代理主机

在Nginx Proxy Manager的管理界面中,点击左边导航栏的"Hosts"选项,然后点击右上角的"Add Proxy Host"按钮。在弹出的窗口中,填写相关信息。

比如,你要将请求拦截并转发给本地的3000端口,可以按照如下配置填写:

  • Domain Names: 输入你要代理的域名或IP地址。
  • Scheme: 选择"HTTP"或"HTTPS"。
  • IP Address/Hostname: 输入你要转发的目标地址,即本地的3000端口。
  • Port: 输入你要转发的目标端口。

点击窗口底部的"Save"按钮保存配置。

  1. 设置请求拦截与转发规则

在添加完反向代理主机后,你需要设置请求拦截与转发的规则。点击左侧导航栏的"Locations"选项,然后点击右上角的"Add Location"按钮。在弹出的窗口中,填写相关信息。

  • Path: 输入你要拦截的路径。例如,你要拦截以/api开头的所有请求,可以填写为"/api"。
  • Proxy Host: 选择之前添加的反向代理主机。
  • Proxy Location: 输入你要转发的目标地址。例如,要转发到http://localhost:3000,则填写为/

点击窗口底部的"Save"按钮保存配置。

  1. 修改Nginx配置文件

为了使Nginx Proxy Manager的配置生效,还需要修改Nginx的配置文件。通过SSH登录到你的服务器,并找到Nginx的配置文件。根据你的安装方式,配置文件可能位于/etc/nginx/nginx.conf/usr/local/nginx/conf/nginx.conf

    Ajouter un hôte proxy inverse

    Dans l'interface de gestion de Nginx Proxy Manager, cliquez sur l'option "Hôtes" dans la barre de navigation de gauche, puis cliquez sur le bouton "Ajouter un hôte proxy" dans le coin supérieur droit. Dans la fenêtre contextuelle, remplissez les informations pertinentes.

    Par exemple, si vous souhaitez intercepter la requête et la transmettre au port local 3000, vous pouvez remplir la configuration comme suit :

    Noms de domaine : saisissez le nom de domaine ou l'adresse IP que vous souhaitez proxy.

    Schéma : sélectionnez "HTTP" ou "HTTPS".
  1. Adresse IP/Nom d'hôte : saisissez l'adresse de destination que vous souhaitez transférer, qui est le port local 3000.

Port : saisissez le port cible que vous souhaitez transférer.

Cliquez sur le bouton "Enregistrer" en bas de la fenêtre pour enregistrer la configuration.

    Définir les règles d'interception et de transfert des demandes

    Après avoir ajouté l'hôte proxy inverse, vous devez configurer les règles d'interception et de transfert des demandes. Cliquez sur l'option « Emplacements » dans la barre de navigation de gauche, puis cliquez sur le bouton « Ajouter un emplacement » dans le coin supérieur droit. Dans la fenêtre contextuelle, remplissez les informations pertinentes. 🎜
    🎜Chemin : saisissez le chemin que vous souhaitez intercepter. Par exemple, si vous souhaitez intercepter toutes les requêtes commençant par /api, vous pouvez renseigner « /api ». 🎜🎜Hôte proxy : sélectionnez l'hôte proxy inverse ajouté précédemment. 🎜🎜Emplacement du proxy : saisissez l'adresse de destination que vous souhaitez transférer. Par exemple, pour transférer vers http://localhost:3000, remplissez /. 🎜
🎜Cliquez sur le bouton "Enregistrer" en bas de la fenêtre pour enregistrer la configuration. 🎜
    🎜Modifier le fichier de configuration Nginx🎜🎜🎜Pour que la configuration de Nginx Proxy Manager prenne effet, vous devez également modifier le fichier de configuration Nginx. Connectez-vous à votre serveur via SSH et recherchez le fichier de configuration Nginx. Selon la façon dont vous l'avez installé, le fichier de configuration peut se trouver dans /etc/nginx/nginx.conf ou /usr/local/nginx/conf/nginx.conf. 🎜🎜Trouvez un bloc d'emplacement similaire au suivant dans le fichier de configuration : 🎜
    http {
      ...
      server {
        ...
      }
    }
    🎜Ajoutez le code suivant dans le bloc d'emplacement : 🎜
    include /var/www/npm/fullchain.pem;
    include /var/www/npm/privkey.pem;
    
    server {
        listen 80;
        server_name your_domain.com;
    
        location / {
            proxy_pass http://127.0.0.1:81;
            proxy_set_header Host $host;
        }
    
        listen 443 ssl; # enable HTTPS
        ssl_certificate /var/www/npm/fullchain.pem; # provide your SSL certificate
        ssl_certificate_key /var/www/npm/privkey.pem; # provide your SSL certificate key
    
    }
    🎜Dans le code ci-dessus, vous devez remplacer "/var/www/npm/fullchain.pem " et "/ Remplacez var/www/npm/privkey.pem" par le chemin de votre certificat SSL. Remplacez également « votre_domaine.com » par votre nom de domaine. 🎜🎜Enregistrez et quittez le fichier, puis rechargez le fichier de configuration Nginx : 🎜
    sudo nginx -t
    sudo service nginx restart
    🎜🎜Test🎜🎜🎜Après avoir terminé les étapes ci-dessus, vous pouvez essayer d'accéder à votre nom de domaine dans le navigateur et observer si la demande est transmise avec succès au port local 3000. Vous pouvez ouvrir les outils de développement de votre navigateur et afficher les détails de la demande sous l'onglet « Réseau ». 🎜🎜Si tout est configuré correctement, la demande doit être interceptée et transmise avec succès au port local 3000, puis le contenu correspondant sera affiché dans le navigateur. 🎜🎜Résumé🎜🎜Cet article explique comment utiliser Nginx Proxy Manager pour implémenter l'interception et le transfert de requêtes, et fournit des exemples de code spécifiques. Grâce à la configuration simple de Nginx Proxy Manager, nous pouvons facilement implémenter un contrôle du flux de requêtes du proxy inverse pour mieux gérer les requêtes sur le serveur. J'espère que cet article pourra vous aider à comprendre comment utiliser Nginx Proxy Manager pour intercepter et transmettre des requêtes. 🎜

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