写点什么

Nginx 基础配置 - 反向代理

用户头像
梁龙先森
关注
发布于: 2021 年 05 月 20 日
Nginx基础配置-反向代理

到目前为止 nginx 到文章,已经写了如下内容:

  • 环境搭建

  • location

  • gzip 压缩

  • 日志开启

  • 资源缓存配置

想了解相关基础配置信息的,可以点击下面文章链接去看看:

前端人需要懂的nginx配置信息(一)

前端人需要懂的nginx配置信息(二)


读完这篇文章你将收获以下内容:

  1. 什么是正向代理

  2. 什么是方向代理

  3. nginx 如何配置反向代理

正向代理

下面是百度百科关于正向代理的介绍:

正向代理,意思是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。


正向代理,它的典型之处在于是一种最终用户知道并主动使用的代理方式。常见的使用场景是,为在防火墙内的局域网客户端提供访问 Internet 的能力。听到这可能还是有些抽象,再举个例子,在国内是访问不了 Google,但有时候我们又需要借助它去查找些资料,那怎么办呢?假如能够将我们的 IP 地址变换成能够访问 Google 的区域 IP 地址,那问题不就迎刃而解了。OK,这就是 VPN 的由来,就是为了解决这个事,它充当中转服务,当电脑接入 VPN 后,对外 IP 地址就会变成 VPN 服务器的 公网 IP,我们请求或接受任何数据都会通过这个 VPN 服务器然后传入到我们本机。

反向代理

反向代理和正向代理的区别在于,正向代理代理的是客户端,反向代理代理的是服务器。


反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为 Web 加速,即使用反向代理作为 Web 服务器的前置机来降低网络和服务器的负载,提高访问效率的。


它的具有如下优点:

  1. 提高了内部服务器的安全

  2. 加快了对内部服务器的访问速度

  3. 节约了有限的 IP 资源

Nginx 配置反向代理

案例:将后缀名为 api 的请求转发到后台服务器

直接上配置信息(提供核心配置信息,其余省略):

 server { 		listen 										80;  # 监听的端口		server_name 							www.hello.com; # 服务器地址或绑定域名    location ^~/api {		# 匹配前缀为api的请求    	# 代理转发的后端服务器地址    	proxy_pass  						http://realserver.com:9530/api/;      proxy_redirect   				off;      # 设置发送到后端服务器的请求头      proxy_set_header 				Host				$host;      proxy_set_header				X-Real_IP		$remote_addr;            # 代理的连接超时时间      proxy_connect_timeout		70;      proxy_send_timeout			90;      # 代理的读取资源超时时间      proxy_read_timeout			90;      proxy_send_lowat				12000;            proxy_buffer_size				4k;      # 设置缓冲区的大小和数量      proxy_buffers						4k;      proxy_busy_buffers_size	64k;      proxy_temp_file_write_size	64k;            # 指定位置来缓冲对文件系统的大型代理请求      proxy_temp_path					/var/nginx/proxy_temp;          }
}
复制代码

总结

至此便粗略学习了正向代理/反向代理的概念,并简单进行了 nginx 反向代理配置。


参考文章:

HttpProxy模块-Nginx

发布于: 2021 年 05 月 20 日阅读数: 18
用户头像

梁龙先森

关注

无情的写作机器 2018.03.17 加入

vite原理/微前端/性能监控方案...,正在来的路上... 最近太忙...

评论

发布
暂无评论
Nginx基础配置-反向代理