当前位置: 首页 > 科技观察

图解代理,3分钟学会使用Nginx实现反向代理

时间:2023-03-22 15:12:23 科技观察

什么是代理服务器?之后,发送给主机,并接收目的主机返回的数据,存储在代理服务器的硬盘中,再发送给客户端。代理服务器提高访问速度的作用(热门网站需要):通常,代理服务器会设置一个较大的缓冲区。当有外部信息经过时,也会保存在缓冲区中。当其他用户访问同一个信息较多时,直接从缓冲区中取出信息传递给用户,提高访问速度。隐藏真实身份(增强网站安全性):上网用户还可以通过代理服务器隐藏自己的真实地址信息,也可以隐藏自己的IP,防止黑客攻击。突破限制(尽情上网):有时网络提供商会对上网用户的端口、目的网站、协议、游戏、即时通讯软件等进行限制,使用代理服务器可以突破这些限制。正向代理和反向代理正向代理,比如你想买房,但是资金不够,你去找王思聪借钱,肯定被拒绝了;这时你打听你的一个好朋友,小A和王思聪你是同学,于是你让小A帮你向王思聪借钱,贷款成功了。小A是这个过程中的代理人。准确的说,是正剂。小A给你借钱了。在这个过程中,了解谁是真正的借款人是非常重要的。王思聪不知道。我们常说的代理是指正向代理,正向代理的过程,它隐藏了真正的请求客户端,服务器不知道真正的客户端是谁,客户端请求的服务被代理服务器代替。例如科学互联网工具Shadowsocks就起到了典型的正向代理作用。反向代理,就像你拨打10086,一个地区有成百上千的客服,你不需要关心电话那头是哪一个,你关心的是你的问题能不能得到专业的解答;那么这里的总机号码10086就是我们所说的反向代理。客户不知道实际提供服务的是谁。反向代理隐藏了真正的服务器。当我们访问www.baidu.com的时候,背后可能有几千台服务器在为我们服务,但是你不知道是哪一台,www.baidu.com就是我们的反向代理服务器,反向代理服务器会帮忙我们将请求转发给提供真实计算的服务器。两者的区别在于代理的对象不同。“正向代理”代理的对象是客户端,“反向代理”代理的对象是服务器。反向代理应用场景目前很多大型网站都使用反向代理。用于防止外网对内网服务器的恶意攻击;缓存减轻服务器压力和访问安全控制;来实现负载均衡。练习配置反向代理服务器NginxNginx是目前最流行的反向代理服务器。以下示例使用nginx反向代理和多域名站点配置:配置IP域名172.16.100.108www.a.com172.16.100.108www.b.comupstreamwww_a_com{server172.16.100.108:8001;}upstreamwww_b_com{server172.16.100.108:8002;}server{listen80;server_namewww.a.com;charsetutf-8;autoindexoff;location/{proxy_passhttp://www_a_com;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;}}server{listen80;server_namewww.b.com;charsetutf-8;autoindexoff;location/{proxy_passhttp://www_b_com;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;}}