1.正向代理
客户端在直接请求目标服务器存在困难时,通常会先将请求发送给指定的代理服务器,在由代理服务器直接和目标服务器进行交互。客户端知道代理服务器的存在,也知道目标服务器,目标服务器却不知道客户端【浏览器】的地址,只知道代理服务器地址,这种目标服务器感知不到客户端地址的代理方式成为正向代理。
正向代理中的代理服务器会架设在客户机与目标主机之间,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。
2.反向代理
客户端向代理服务器请求服务, 代理服务器将请求转发给真正能处理请求的目标服务器,并将结果。这个过程中客户端【浏览器】 感知不到目标服务器的存在,而目标服务器知晓客户端的地址。代理服务器分发请求的模式叫反向代理。
反向代理服务器架设在服务器端并与目标主机一起对外表现为一个服务器。客户端将请求发往 反向代理服务器,反向代理服务器将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端。
3.反向代理的Nginx实现
Nginx作为反向代理服务器,需要把客户端发送的请求转发给Http服务器,Nginx是通过调整Nginx配置来实现这一目的的,运用的主要命令是localtion 。 location指令的作用是根据用户请求的URI来请求不同的目标服务器,也就是根据用户请求的网站URL进行匹配,匹配成功即进行相关的操作。
location的语法是:
location [