Home >Operation and Maintenance >Nginx >How to use Nginx Proxy Manager to implement reverse proxy request interception and forwarding

How to use Nginx Proxy Manager to implement reverse proxy request interception and forwarding

WBOY
WBOYOriginal
2023-09-26 08:41:101914browse

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

How to use Nginx Proxy Manager to implement reverse proxy request interception and forwarding

Nginx Proxy Manager is an Nginx-based management tool that can be configured through a simple interface To manage Nginx reverse proxy. It allows users to set reverse proxy rules through a graphical interface, and also provides request interception and forwarding functions to better control the flow of requests. This article will introduce how to use Nginx Proxy Manager to implement request interception and forwarding, and provide specific code examples.

  1. Install Nginx Proxy Manager

First, we need to install Nginx Proxy Manager on the server. You can download the latest version of the installation package from the official website (https://nginxproxymanager.com/) and follow its guide to install it. After the installation is complete, you can access the management interface through http://localhost:81. The default username and password are admin.

  1. Add reverse proxy host

In the management interface of Nginx Proxy Manager, click the "Hosts" option in the left navigation bar, and then click "Add Proxy" in the upper right corner Host" button. In the pop-up window, fill in the relevant information.

For example, if you want to intercept the request and forward it to the local port 3000, you can fill in the configuration as follows:

  • Domain Names: Enter the domain name or IP address you want to proxy.
  • Scheme: Select "HTTP" or "HTTPS".
  • IP Address/Hostname: Enter the destination address you want to forward, which is the local port 3000.
  • Port: Enter the target port you want to forward.

Click the "Save" button at the bottom of the window to save the configuration.

  1. Set request interception and forwarding rules

After adding the reverse proxy host, you need to set up request interception and forwarding rules. Click the "Locations" option in the left navigation bar, and then click the "Add Location" button in the upper right corner. In the pop-up window, fill in the relevant information.

  • Path: Enter the path you want to intercept. For example, if you want to intercept all requests starting with /api, you can fill in "/api".
  • Proxy Host: Select the reverse proxy host added previously.
  • Proxy Location: Enter the destination address you want to forward. For example, to forward to http://localhost:3000, fill in /.

Click the "Save" button at the bottom of the window to save the configuration.

  1. Modify Nginx configuration file

In order to make the configuration of Nginx Proxy Manager take effect, you also need to modify the Nginx configuration file. Log in to your server via SSH and find the Nginx configuration file. Depending on how you installed it, the configuration file may be located in /etc/nginx/nginx.conf or /usr/local/nginx/conf/nginx.conf.

Find a location block similar to the following in the configuration file:

http {
  ...
  server {
    ...
  }
}

Add the following code in the location block:

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

}

In the above code, you need to replace "/var /www/npm/fullchain.pem" and "/var/www/npm/privkey.pem" with your SSL certificate path. Also, replace "your_domain.com" with your domain name.

Save and exit the file, then reload the Nginx configuration file:

sudo nginx -t
sudo service nginx restart
  1. Test

After completing the above steps, you can Try to access your domain name and observe whether the request is successfully forwarded to the local port 3000. You can open your browser's developer tools and view the request details under the "Network" tab.

If everything is configured correctly, the request should be successfully intercepted and forwarded to the local port 3000, and then the corresponding content will be displayed in the browser.

Summary

This article introduces how to use Nginx Proxy Manager to implement request interception and forwarding, and provides specific code examples. Through the simple configuration of Nginx Proxy Manager, we can easily implement request flow control of reverse proxy to better manage requests in the server. I hope this article can help you understand how to use Nginx Proxy Manager to intercept and forward requests.

The above is the detailed content of How to use Nginx Proxy Manager to implement reverse proxy request interception and forwarding. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn