• 正向代理与反向代理


    一、反向代理

    说到反向代理,我们肯定能联想到正向代理,那咋们就先谈谈两者的区别。。首先得弄清楚什么是代理?正向代理是什么?反向代理又是什么?二者可以用来干什么?

     

    1. 正向代理

    正向代理简单来说就是一个跳板机,代理客户端访问外部资源

    比如说,我客户端无法访问某网站,而我能访问某个代理服务器,这个代理服务器能访问那个网站,于是我连上代理服务器,让它代替我去取那个网站的内容,然后再返还给我。在网站的角度只知道代理服务器来访问过,有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站。

    所以正向代理客户端必须配置正向代理服务器的IP地址和代理程序的端口

    正向代理的用途:

    (1)访问原来无法访问的资源,如google

    (2)可以做缓存,加速访问资源

    (3)对客户端访问授权,上网进行认证

    (4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息

     

    1. 反向代理

    反向代理不需要任何配置客户端就可以访问,客户端并不知道自己访问的是代理服务器。。

    反向代理服务器接到客户端发过来的连接请求,接受并转发给内网中的web服务器,,,并将从服务器上得到的结果返回给internet上请求连接的客户端。

    反向代理的用处:

    (1)保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击

    大型网站通常将反向代理服务器作为公网访问地址,web服务器在内网

    (2)负载均衡,反向代理减少网站的负载

    1. 正向代理与反向代理区别

    好,现在我们来看看二者的区别

    正向代理中,proxy和cient同属一个LAN,对server透明;

    反向代理中,proxy和server同属一个LAN,对client透明;

    实际上proxy在两种代理中都是代理收发请求和响应,不过是结构上看左右互换了一下,所以把第二种代理叫做反向代理!!!

     

    二、nginx反向代理

    nginx支持配置反向代理,通过反向代理实现网站的负载均衡。

    nginx通过proxy_pass_http 配置代理站点,upstream实现负载均衡。通过修改nginx配置文件就能实现反向代理,这里把配置文件贴出来仅供参考。。。

    nginx配置文件不需要全部写在nginx.conf里,server段多了就没有条理性。

    可以修改nginx.conf文件,添加include ***.conf http{}段,新建一个***.conf加入如下内容,修改ip与域名,重启nginx即可!

     

    upstream apachephp {

    server ip:8080; #Apache

    }

     

    ## Start www.quancha.cn ##

    server {

    listen 80;

    server_name www.quancha.cn;

     

    access_log logs/quancha.access.log main;

    error_log logs/quancha.error.log;

    root html;

    index index.html index.htm index.php;

     

    ## send request back to apache ##

    location / {

    proxy_pass http://apachephp;

     

    #Proxy Settings

    proxy_redirect off;

    proxy_set_header Host $host;

    proxy_set_header X-Real-IP $remote_addr;

    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

    proxy_max_temp_file_size 0;

    proxy_connect_timeout 90;

    proxy_send_timeout 90;

    proxy_read_timeout 90;

    proxy_buffer_size 4k;

    proxy_buffers 4 32k;

    proxy_busy_buffers_size 64k;

    proxy_temp_file_write_size 64k;

    }

    }

    转载请注明出处,谢谢!!!
  • 相关阅读:
    3.30一周拾遗
    3.25周 一周拾遗
    自动加载以及Composer的实现
    MySQL 事务处理
    PHP代码实现3 [函数角度]
    PHP代码实现2 [从变量和数据的角度] 1
    PHP代码实现2 [从变量和数据的角度] 2
    vue 报错: [Vue warn]: Error in nextTick: "RangeError: Maximum call stack size exceeded" 很可能是你的name错了
    vue电商开发记录1—实现电商图片放大镜,移入放大效果
    vue图片点击放大预览v-viewer
  • 原文地址:https://www.cnblogs.com/haijunzhang/p/10095481.html
Copyright © 2020-2023  润新知