Nginx反向代理服务器简单配置案例

这篇具有很好参考价值的文章主要介绍了Nginx反向代理服务器简单配置案例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验图示

Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------​​​​​​​Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------​​​​​​​Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------​​​​​​​Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------​​​​​​​Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------​​​​​​​Nginx反向代理服务器简单配置案例,nginx,服务器,linux---------------------------------------------------------------------------------------------------------------------------------

配置解释

proxy_pass: 

是Nginx的指令,用于指定请求应该转发到的上游服务器。
http://192.168.88.163:88; 这是上游服务器的地址和端口。这意味着当Nginx收到一个请求时,它会将这个请求转发到 IP 地址为 192.168.88.163,端口为 80 的服务器上。
简而言之,这个配置告诉 Nginx:当收到一个请求时,不要直接处理它,而是将它转发到 192.168.88.163 上的 80 端口上。这通常用于将外部流量转发到内部服务或应用上。

proxy_redirect;

用于修改被代理服务器返回的响应头中的Location和Refresh字段。这个指令的作用是确保当代理服务器返回一个重定向响应时,重定向的URL对外部客户端是有效和可访问的。
proxy_redirect default;:使用默认规则来处理重定向,即替换重定向URL中的主机名和端口,使其与当前服务器的主机名和端口匹配。
proxy_redirect off;:关闭重定向处理,即不修改重定向URL。
此外,proxy_redirect 指令还支持一些变量和复杂的匹配规则,可以根据需要进行配置。

proxy_set_header Host $http_host;

用于设置转发请求的头部信息。用于保持请求的原始头部信息。 
解释如下:
proxy_set_header:用于设置转发请求的头部信息。
Host: 这是要设置的头部字段的名称,即 "Host"。
$http_host: 这是一个变量,表示请求的原始主机名和端口号。它通常包含域名和可能的端口号,例如 "example.com:80"。
这个指令的作用是将请求的主机头设置为原始请求的主机头。在反向代理的情况下,这意味着 Nginx 会将请求转发到后端服务器,并将原始的主机头信息包含在转发请求中。
这样做的原因是,当请求通过反向代理时,原始的主机头信息可能会丢失或被修改。通过使用 proxy_set_header Host $http_host; 指令,可以确保后端服务器接收到正确的原始主机头信息,以便正确处理请求。

proxy_set_header X-Real-IP $remote_addr;

 用于设置转发请求的头部信息。用于传递客户端的真实 IP 地址给后端服务器。
解释如下:
proxy_set_header: 这是 Nginx 的一个指令,用于设置转发请求的头部信息。
X-Real-IP: 这是要设置的头部字段的名称,通常用于表示客户端的真实 IP 地址。
$remote_addr: 这是一个变量,表示客户端的 IP 地址。当 Nginx 作为反向代理时,它将使用这个变量来设置 X-Real-IP 头部字段,以便将客户端的真实 IP 地址传递给后端服务器。
这个指令的作用是将客户端的真实 IP 地址包含在请求的头部中,以便后端服务器可以识别客户端的真实 IP 地址。这在处理来自反向代理的请求时非常有用,因为客户端的真实 IP 地址可能不会直接暴露给后端服务器。通过使用 proxy_set_header X-Real-IP $remote_addr; 指令,可以确保后端服务器接收到正确的客户端 IP 地址,以便正确处理请求和日志记录等操作。

proxy_connect_timeout;

用于设置代理服务器与后端服务器建立连接的超时时间。
具体来说,当客户端向 Nginx 发起请求时,Nginx 会尝试与后端服务器建立连接。如果在proxy_connect_timeout 指定的时间内无法建立连接,Nginx 将返回一个错误给客户端。这个指令的单位是秒,默认值通常为 60 秒。
通过调整 proxy_connect_timeout 的值,可以控制 Nginx 与后端服务器建立连接的超时时间,以适应不同的网络环境和后端服务器的性能。如果设置为较小的值,将缩短超时时间,可能导致连接失败;如果设置为较大的值,将延长超时时间,可能导致请求延迟。因此,需要根据实际情况进行合理的配置。

proxy_send_timeout;

用于设置向后端/上游服务器发送请求的超时时间。
当 Nginx 与后端/上游服务器建立连接后,它会将请求发送给后端/上游服务器。如果在 proxy_send_timeout 指定的时间内,Nginx 无法成功发送整个请求,那么它将关闭与后端/上游服务器的连接,并返回一个错误给客户端。这个指令的单位是秒,默认值通常为 60 秒。
通过调整 proxy_send_timeout 的值,可以控制 Nginx 向后端/上游服务器发送请求的超时时间,以适应不同的网络环境和请求大小。如果设置为较小的值,将缩短超时时间,可能导致请求发送失败;如果设置为较大的值,将延长超时时间,可能导致请求发送延迟。因此,需要根据实际情况进行合理的配置。

proxy_read_timeout;

用于设置向后端/上游服务器读取响应的超时时间。
具体来说,当 Nginx 向后端/上游服务器发送请求后,它会等待后端/上游服务器返回响应。如果在 proxy_read_timeout 指定的时间内,Nginx 无法从后端/上游服务器读取到完整的响应,那么它将关闭与后端/上游服务器的连接,并返回一个错误给客户端。这个指令的单位是秒,默认值通常为 60 秒。

proxy_buffering on; 

用于开启从后端被代理服务器响应内容的缓冲。
如果 proxy_buffering 开启,Nginx 会假定被代理的后端服务器会以最快速度响应,并把内容保存在由指令 proxy_buffer_size 和 proxy_buffers 指定的缓冲区里边。如果响应内容无法放在内存里边,那么部分内容会被写到磁盘上。如果 proxy_buffering 被关闭了,那么响应内容会按照获取内容的多少立刻同步传送到客户端。

proxy_buffer_size 32k;

用于设置代理服务器保存用户响应头信息的缓冲区大小。
将 proxy_buffer_size 设置为 32k,意味着代理服务器将使用 32k 大小的缓冲区来保存用户响应头信息。这个缓冲区的大小可以根据实际需求进行调整,以适应不同大小的头信息。

proxy_buffers 4 128k;

用于设置代理服务器(Nginx)保存用户响应体的缓冲区数量和大小。
proxy_buffers 设置为 4 128k,意味着代理服务器将使用 4 个大小为 128k 的缓冲区来保存用户响应体。这些缓冲区用于存储从后端服务器获取的响应数据,以便在客户端请求时进行读取和传输。

roxy_busy_buffers_size 256k;

 用于设置代理服务器在处理高并发请求时,忙缓冲区的大小。
当代理服务器同时处理大量请求时,这个指令可以帮助控制忙缓冲区的内存使用量,以防止内存溢出或性能问题。如果代理服务器正在处理大量请求并且缓冲区已满,那么新请求将会被拒绝或等待,直到有足够的空间可用。
将 proxy_busy_buffers_size 设置为 256k,意味着代理服务器在处理高并发请求时,每个缓冲区的大小将被限制为 256k。这个值可以根据实际负载和性能需求进行调整,以确保代理服务器在高并发情况下仍然能够有效地处理请求。

proxy_max_temp_file_size 256k;

用于设置代理服务器在缓冲响应数据时,临时文件的最大大小。
当 Nginx 代理服务器从后端服务器接收响应数据时,如果响应数据的大小超过了 proxy_buffer_size 和 proxy_buffers 指定的缓冲区大小,Nginx 会将超出部分的数据写入临时文件中。proxy_max_temp_file_size 指令用于限制这些临时文件的最大大小。
将 proxy_max_temp_file_size 设置为 256k,意味着每个临时文件的最大大小将被限制为 256k。如果响应数据的大小超过了缓冲区大小和临时文件的最大大小,Nginx 将会报错并返回错误给客户端。文章来源地址https://www.toymoban.com/news/detail-773660.html

到了这里,关于Nginx反向代理服务器简单配置案例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • nginx 反向代理服务器端口转发问题

    先介绍一下项目背景,公司里有个外包Saas项目,这里假设为A项目( 前后端不分离 );项目架构大概如下;但是项目部署到生产环境时,那台服务器80端口被其他应用占用了(我尼玛...),nginx监听端口那边只能监听其他端口了,比如监听:18000,通过nginx反向代理将18000端口转发到

    2024年02月04日
    浏览(40)
  • Nginx HTTP和反向代理服务器

    1、概念: Nginx  (engine x) 是一个高性能的HTTP和反向代理web服务器。 2、什么是代理服务器: 概念: 代理服务器是介于客户端和Web服务器之间的另一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页信息,而是通过向代理服务器发送请求,信号会先送到代理服务

    2024年02月04日
    浏览(36)
  • 超全Nginx反向代理服务器原理+实战篇

    1.Nginx简介和安装部署 1.1.什么是Nginx 高性能的[HTTP]和反向代理的web服务器,用c语言编写,高性能支持单机千万级连接,强大的第三方库支持,负载均衡、静态文件服务器等。 1.2.Nginx的用途 搭建前端静态资源服务器、文件服务器 负载均衡Upstream配置实战、后端节点高可用性探

    2024年02月01日
    浏览(35)
  • 具有公网IP的服务器作为代理服务器,并使用Nginx将内网服务器反向代理

    在代理服务器上安装Nginx。如果您正在使用Linux操作系统,则可以使用包管理器来安装Nginx。例如,如果您使用的是Ubuntu,可以使用以下命令安装: 配置Nginx以将HTTP和HTTPS请求转发到内部服务器。打开Nginx的主配置文件/etc/nginx/nginx.conf,并在http块中添加以下代码: 注意: 将

    2024年01月25日
    浏览(33)
  • 【云原生】使用nginx反向代理后台多服务器

    背景 随着业务发展, 用户访问量激增,单台服务器已经无法满足现有的访问压力,研究后需要将后台服务从原来的单台升级为多台服务器,那么原来的访问方式无法满足,所以引入 nginx 来代理多台服务器,统一请求入口。 什么是nginx Nginx[engine x]是一个免费开源Web服务器,是

    2024年02月04日
    浏览(39)
  • 【开发日记】换掉Nginx,使用HAProxy作为反向代理服务器

    HAProxy,全称为 \\\"High Availability Proxy\\\",是一款开源的、高性能的负载均衡器和代理服务器。主要用于改善应用程序的可用性、可靠性和性能。 与大众熟知的Nginx相比各有优缺点,如果你需要的是一个Web服务器,还是首选Nginx,虽然HAProxy也能实现相同效果,但却需要通过十分繁琐

    2024年01月25日
    浏览(41)
  • Nginx:高性能的Web服务器与反向代理

    在现代互联网应用程序的开发和部署中,选择一个可靠、高性能的Web服务器是至关重要的。Nginx是一个备受推崇的选择,它以其卓越的性能和可靠性在开发者社区中享有盛誉。本文将介绍Nginx的概念、优势,以及如何使用Nginx作为Web服务器和反向代理。 Nginx(发音为“engine X”

    2024年02月19日
    浏览(48)
  • 使用Nginx作为反向代理服务器在Linux中的最佳实践

    在Linux环境下,Nginx因其高效性能、稳定性以及丰富的功能集而广泛用于作为反向代理服务器。以下是在Linux中使用Nginx作为反向代理服务器的最佳实践: 1. 安装与配置 首先,确保你的Linux发行版已经安装了Nginx。大多数Linux发行版都提供了Nginx的包管理工具。例如,在基于Deb

    2024年01月17日
    浏览(34)
  • nginx反向代理实现不同域名映射到同一台服务器的相同端口

    在实际应用中,我们经常会遇到多个域名需要映射到同一台服务器的相同端口的情况,这时可以使用nginx反向代理来实现。 以实现将www.example.com和www.test.com都映射到127.0.0.1的80端口为例,具体步骤如下: 修改hosts文件 在本地hosts文件中添加以下两行: 配置nginx反向代理 在ngi

    2024年02月14日
    浏览(24)
  • [AIGC] Nginx:一个高性能的 Web 服务器和反向代理

    Nginx(engine x)是一个高性能的 Web 服务器和反向代理,它由 Igor Sysoev 于 2002 年开发,并于 2004 年首次发布为开源软件。Nginx 是当今最受欢迎的 Web 服务器之一,它在互联网上被广泛使用,支持 millions 个网站和应用程序。 Nginx 是一个免费、开源、高性能的 Web 服务器和反向代理

    2024年02月20日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包