通过nginx实现方向代理过程图解

通过nginx实现方向代理过程图解,第1张

通过nginx实现方向代理过程图解

本文详细介绍了根据nginx进行方向代理的全过程,根据示例代码在原文中的详细介绍非常详细,对于大家的学习培训或者工作都有一定的参考价值,有需要的朋友可以参考一下。

本文详细介绍了根据nginx进行方向代理的全过程,根据示例代码在原文中的详细介绍非常详细,对于大家的学习培训或者工作都有一定的参考价值,有需要的朋友可以参考一下。

Nginx完成方向代理

1。nginx是什么

Nginx是一个由俄罗斯人编写的非常轻量级的HTTPweb服务器。它是一个优秀的HTTP和反向代理web服务器,还显示IMAP/POP3/SMTP服务。其特点是占用运行内存少,并发工作能力高。其实nginx的高并发工作能力在同类web服务器中确实不错。应用nginx网站的客户有百度搜索、JD.COM商城、Sina.com、网易游戏、腾讯官方、Taobao.com等。

2。什么是代理

代理服务器,远程服务器推送请求时,不容易立即发送到目的服务器,只能先发送到代理服务器。代理服务项目接受远程服务器的请求后,会传送到服务器,目的服务器返回的数据信息会存储在代理服务器的计算机硬盘上,然后发送到远程服务器。

比如:大家旁边要租房的人。

3。没有代理的场景

在没有代理的情况下,客户端和nginx服务器都是客户端,都是客户端请求服务器,服务器立即响应客户端。

4。公司场景在互联网技术请求中,客户端通常不能立即向服务器发出请求,所以客户端与服务项目之间的通信必须完成。

5。NGINX代理服务的一般方式

INX作为一个代理服务项目,按照应用领域进行总结,代理分为正向代理和反向代理

6。转发代理

转发代理:客户端<1>:1。代理>:服务器:

代理只是简单的租房,比如

A(租客)B(中介公司)C(业主)A(客户)想租C(服务器)的房子,但是A(客户)不认识C(服务器),租不到。B(代理)了解到C(服务器端)可以租这个房子,所以你让B(代理)帮你租这个房子。Ps:整个过程中,C(服务端)不知道A(客户端)只知道B(代理)。c(服务端)不知道A(客户端)租了房子,只知道房子转租给B(代理)

-

代理,建立在远程服务器和整个目标服务器之间,仅用于代理从内部互联网到互联网的连接请求。远程服务器必须指定代理网络服务器,并将最初发送给Web服务器的http请求发送给代理网络服务器。

7。反向代理

反向代理:客户端一>:代理:服务器反方向的代理也用租房的例子:A(客户端)想租房,B(代理)转租给他。其实此刻C(服务器端)才是主人。b(代理)是中介公司,把这套房子转租给A(客户)。整个过程中,A(客户)不知道这个房子的主人是谁。他大概觉得这个房子是B(代理)

-

反向代理服务器构建在服务器端,根据缓存频繁请求的网页来减少网络服务器的工作量,并将远程服务器请求发送到内部互联网上的整体目标网络服务器;并且从服务器获得的结果被返回给请求互联网连接的客户端。此时代理网络服务器和整体目标服务器对外开放,主要表现为网络服务器。

8。反向代理的关键应用

现在很多大中型网站都采用反向代理。除了避免外网地址对内网服务器的恶意攻击,缓存文件以减轻网络服务器的工作压力,管理网络安全外,还可以开发一个三层交换机,将客户请求分配到多个网络服务器。

9。适用于NGINX代理的代理协议

http归属于七层的网络层代理HTML文件传输协议 https代理http/https协议书 TCP归属于四层网络层代理tcp/dupxiey websocket用以开发设计代理http1.1长连接通信协议 GRPC代理go語言远程控制启用 POP/IMAP代理电子邮件收取和发送协议书 RTMP代理媒体服务器,直播间

10.web01配备了代理

[root@web01php]#vim/etc/nginx/conf.d/blog.drz.com.conf server{ listen80; server_nameblog.drz.com; root/code/wordpress; indexindex.phpindex.html; access_log/var/log/nginx/blog.drz.com_access.logmain; location~\.php${ fastcgi_pass127.0.0.1:9000; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; includefastcgi_params; } } 代理wordpress [root@lb01~]#vim/etc/nginx/conf.d/daili.conf编写wordpress的代理 server{ listen80; server_nameblog.drz.com; location/{ proxy_passhttp://10.0.0.7; proxy_set_headerHOST$http_host; proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for; proxy_http_version1.1; proxy_connect_timeout60s; proxy_read_timeout60s; proxy_send_timeout60s; proxy_bufferingon; proxy_buffer_size9k; proxy_buffers89k; } } root@lb01~]#nginx-t nginx:theconfigurationfile/etc/nginx/nginx.confsyntaxisok nginx:configurationfile/etc/nginx/nginx.conftestissuccessful [root@lb01~]#nginx-sreload

十一。添加发送到后端网络服务器的请求报头的信息内容

#客户请求的情况下HOST的值是www.oldboy.com,那麼代理服务项目会像后端开发传送请求的還是www.oldboy.com proxy_set_headerHost$http_host; #将$remote_addr的值放入自变量X-Real-IP中,$remote_addr的数值客户端的ip proxy_set_headerX-Real-IP$remote_addr; #客户端根据代理服务项目浏览后端开发服务项目,后端开发服务项目根据该自变量会纪录真正客户端详细地址 proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;

12。从代理到后端的TCP连接、响应和返回等请求的超时

//nginx代理与后端开发网络服务器网络连接超时時间(代理网络连接超时) Syntax:proxy_connect_timeouttime; Default:proxy_connect_timeout60s; Context:http,server,location //nginx代理等候后端开发网络服务器的响应速度 Syntax:proxy_read_timeouttime; Default:proxy_read_timeout60s; Context:http,server,location //后端开发网络服务器数据信息回发送给nginx代理请求超时時间 Syntax:proxy_send_timeouttime; Default:proxy_send_timeout60s; Context:http,server,location

十三。为什么要应用代理

1)提高网站的打开速度。由于整体目标服务器返回的数据信息会存储在代理网络服务器的电脑硬盘中,下次有客户浏览同一网站数据信息时,会立即从代理网络服务器的电脑硬盘中加载,具有缓存文件的作用,特别是对于热门网站,可以显著提升请求率。

2)防火墙的作用由于所有远程服务器请求都必须根据代理网络服务器来浏览远程控制网站,因此有可能对代理网络服务器上的一些不安全信息内容进行限制和过度考虑。

3)从代理web服务器来看,互联网技术上开发设计的代理web服务器有很多。当远程服务器的访问受到限制时,它可以根据不受限制的代理web服务器浏览整个目标网站。通俗点说,大家用的过墙浏览器就是代理web服务器。虽然不能出国留学,但是可以马上接入外网。

14。摘要

正向代理的对象是客户端,反向代理的对象是服务于客户端的服务器。

文章里的内容就这些了。期待对大家的学习和培训有所帮助,也期待大家的应用。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/774615.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-03
下一篇2022-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存