如何设置Nginx反向代理服务器示例

2024-01-14    分类: 网站建设

大多数企业架构使用单个反向代理服务器来处理所有传入的请求。然后代理服务器检查每个HTTP请求并识别哪个后端系统,无论是Apache,Tomcat,Express还是NodeJS服务器,都应该处理请求。然后,反向代理将请求转发到该服务器,允许处理该请求,从该后端服务器获得响应,然后将响应发送回客户端。配置为反向代理的Nginx服务器提供此功能。

大多数企业架构使用单个反向代理服务器来处理所有传入的请求。然后代理服务器检查每个HTTP请求并识别哪个后端系统,无论是Apache,Tomcat,Express还是NodeJS服务器,都应该处理请求。然后,反向代理将请求转发到该服务器,允许处理该请求,从该后端服务器获得响应,然后将响应发送回客户端。配置为反向代理的Nginx服务器提供此功能。

这个Nginx反向代理示例使用Tomcat作为源服务器,但任何后端服务器,如Node,Jetty或WebSphere都可以工作。

Nginx反向代理设置的好处是什么?

使用Nginx作为反向代理的好处包括:

客户端通过单个Web地址访问所有后端资源。 反向代理可以提供静态内容,这减少了Express等应用服务器上的负载,Tomcat或WebSphere。 Nginx反向代理可以通过保护后端资源的防火墙进行导航。 反向代理可以充当高速缓存或缓冲器以减少延迟。 通过对站点的单点访问,用户访问控制大大简化。 Nginx反向代理配置步骤

按照以下步骤设置和配置您自己的Nginx反向代理服务器:

在Windows或Linux服务器上安装Nginx(先决条件)。 添加Nginx代理通行证 在虚拟主机或默认配置文件中设置。 将上下文根映射到后端服务器的URL。 可选地,设置Nginx反向代理的头部以用于后端。 重新启动Nginx反向代理并测试反向代理设置。 安装Nginx

在Ubuntu上,安装最新版本的Nginx。执行apt-get更新 和/或apt-get升级 命令,后跟apt-get install 命令

sudo apt-获取更新-y正在阅读包列表...完成sudo apt-get upgrade -y正在计算升级...完成 sudo apt-get install nginx -y以下Nginx包将安装在Ubuntu 22上:libnginx-mod-http-geoip2 nginx-common nginx-core nginx-proxy安装nginx 1.18 ubuntu 22... Done 如何验证Nginx安装?

执行尽职调查并检查Nginx服务器安装是否成功。

状态检查应该表明Nginx处于活动状态。

sudo systemctl status nginx● nginx - 一个高性能的web,http和反向代理服务器 Loaded:loaded(/lib/systemd/system/nginx.service;enabled;) 有效: active(Nginx服务器运行) 添加Nginx proxy_pass设置

Nginx反向代理配置中最重要的配置步骤是添加代理通行证 将传入URL映射到后端服务器的设置。

在这个Nginx反向代理示例中,我们假设Apache Tomcat服务器在端口8080的本地主机上运行,并且我们需要Nginx代理应用程序 的上下文根/示例.

proxy_pass设置使Nginx反向代理设置工作。

该代理通行证 在任何虚拟主机配置文件的位置部分配置。要设置Nginx代理通行证 全局,编辑默认值 Nginx中的文件网站-可用 文件夹

sudo nano /etc/nginx/sites-available/default Nginx proxy_pass示例

对于本例,我们设置Nginx反向代理的位置映射,以转发任何具有/示例 在指向运行在端口8080上的Apache Tomcat服务器的URI中:

#nginx反向代理映射示例# /etc/nginx/sites-available/default区位/示例 { 代理_通行证http://localhost:8080/示例;} 设置Nginx代理头值

默认情况下,Nginx将自己的IP地址中继到反向代理目标。

要让Nginx中继发出原始请求的客户端的IP地址、主机和端口信息,可以设置代理集标头 价值观

此外,Nginx缓冲数据以帮助管理繁重的工作负载,但这对于需要尽可能低延迟的应用程序来说可能是不可取的。代理缓冲 关闭用于Nginx反向代理配置。

这个Nginx反向代理示例关闭缓冲,同时为处理代理请求的后端服务器设置客户端头:

#示例nginx反向代理配置文件# /etc/nginx/sites-available/default区位/示例 { 代理通行证 http://localhost:8080/examples; 代理缓冲 关闭; 代理集标头 X-Real-IP $remote_addr; 代理集标头 X-Forwarded-Host $host; 代理集标头 X-Forwarded-Port $server_port;}

添加这些Nginx代理传递,代理缓冲 和/或代理集标头 更新到默认配置文件并保存更改。

重新启动Nginx作为反向代理

要查看Nginx作为反向代理的功能,只需重新启动服务器以加载新配置。

sudo systemctl restart nginx

当服务器上线后,尝试通过Nginx反向代理访问后端服务器。在这个例子中,我们可以通过Nginx访问运行在8080端口上的Tomcat服务器。

http://localhost/示例 --代理--〉 http://localhost:8080/例

Nginx反向代理转发充当Tomcat上示例应用程序的所有请求的单一入口点。这证明Nginx反向代理配置设置是成功的。

Nginx反向代理示例将/示例 指向Apache Tomcat服务器的URI。

这就是在Ubuntu上配置和设置Nginx反向代理的简单程度。

新闻标题:如何设置Nginx反向代理服务器示例
浏览地址:https://www.cdcxhl.com/news44/313544.html

成都网站建设公司_创新互联,为您提供云服务器网站改版企业建站Google服务器托管软件开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营