Red Hat Training

A Red Hat training course is available for RHEL 8

2.4. 将 NGINX 配置为 HTTP 流量的反向代理

您可以将 NGINX web 服务器配置为作为 HTTP 流量的反向代理。例如,您可以使用此功能将请求转发到远程服务器上的特定子目录。从客户端的角度来看,客户端从它所访问的主机加载内容。但是 NGINX 会从远程服务器加载实际内容并将其转发给客户端。

这个流程解释了如何将流向web 服务器上的/example目录的流量转发到URLhttps://example.com

先决条件

  • NGINX 已安装,如 安装和准备 NGINX 中所述。
  • 可选:反向代理上启用了 TLS 加密。

流程

  1. 编辑/etc/nginx/nginx.conf文件,并将以下设置添加到提供反向代理的server块中:

    location /example {
        proxy_pass https://example.com;
    }

    location块定义了 NGINX 将/example目录中的所有请求传给https://example.com

  2. httpd_can_network_connectSELinux 布尔值参数设置为1,以便将 SELinux 设置为允许 NGINX 转发流量:

    # setsebool -P httpd_can_network_connect 1
  3. 重启nginx服务:

    # systemctl restart nginx

验证步骤

  • 使用浏览器连接到 http://host_name/example,就会显示https://example.com的内容。