如何在PHP中利用Nginx实现一个反向代理功能

  介绍

这期内容当中小编将会给大家带来有关如何在PHP中利用Nginx实现一个反向代理功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<强>一、代理服务器

<强> 1,什么是代理服务器

代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中,再发送给客户机。

如何在PHP中利用Nginx实现一个反向代理功能“> <br/> </p> <p> <强> 2,为什么要使用代理服务器</强> </p> <p> 1)提高访问速度</p> <p>,,由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了缓存的作用,尤其对于热门站点能明显提高请求速度。</p> <p> 2)防火墙作用</p> <p>,,由于所有的客户机请求都必须通过代理服务器访问远程站点,因此可在代理服务器上设限,过滤某些不安全信息。</p> <p> 3)通过代理服务器访问不能访问的目标站点</p> <p>,,互联网上有许多开发的代理服务器,客户机在访问受限时,可通过不受限的代理服务器访问目标站点,通俗说,我们使用的翻墙浏览器就是利用了代理服务器,虽然不能出国,但也可直接访问外网。</p> <p> <强>二、反向代理VS正向代理</强> <br/> </p> <p> 1,什么是正向代理?什么是反向代理? </p> <p>正向代理,架设在客户机与目标主机之间,只用于代理内部网络对互联网的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。</p> <p> <img src= upstream  tomcatserver1  {,,   server  192.168.72.49:8081;,,,      }大敌;      upstream  tomcatserver2  {,,,   server  192.168.72.49:8082;,,,      },      ,server  {,,,      ,,,,listen ,,, 80,,,,,,,      ,,,server_name  8081. max.com;,,,,,,   ,,,# charset  koi8-r;,,,,,,   ,,,# access_log 日志/host.access.log 主要,,,,,,,   ,,,的位置/,{,,,,,,   ,,,,proxy_pass , http://tomcatserver1,,,,,,,,      ,,,,index  index.html 你,,,,,,      ,},,,,,      },      server  {,,,,      ,,,,,listen ,,, 80,,,,,,   ,,,,server_name  8082. max.com;,,,,,,   ,,,,,# charset  koi8-r;,,,,,,   ,,,,,# access_log 日志/host.access.log 主要,,,,,,,   ,,,,的位置/,{,,,,,,   ,,,,proxy_pass , http://tomcatserver2,,,,,,,,   ,,,,index  index.html 你,,,,,,      ,,},,,,,,,      以前,}

流程:

1)浏览器访问8081. max.com,通过本地主人文件域名解析,找到192.168.72.49服务器(安装nginx)

2) nginx反向代理接受客户机请求,找到server_name为max.com 8081.的服务器节点,根据proxy_pass对应的http路径,将请求转发到上游tomcatserver1上,即端口号为8081的tomcat服务器。

如何在PHP中利用Nginx实现一个反向代理功能