代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站。在一般情况下,我们使用网络浏览器直接去连接其他Internet站点取得网络信息时,须送出Request信号来得到回答,然后对方再把信息以字节(Bit)方式传送回来
代理服务器是介于浏览器和Web服务器之间的一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,Request(请求) 信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器。而且,大部分代理服务器都具有缓冲的功能,就好象一个大的Cache(高速缓冲存储器),它有很大的存储空间,它不断将新取得数据储存到它本机的存储器上,如果浏览器所请求的数据在它本机的存储器上已经存在而且是最新的,那么它就不重新从Web服务器取数据,而直接将存储器上的数据传送给用户的浏览器,这样就能显著提高浏览速度和效率
更重要的是:Proxy Server(代理服务器)是Internet链路级网关所提供的一种重要的安全功能,它的工作主要在开放系统互联(OSI)模型的对话层。
主要的功能有:
突破自身IP访问限制,访问国外站点。教育网、169网等网络用户可以通过代理访问国外网站
访问一些单位或团体内部资源,如某大学FTP(前提是该代理地址在该资源 的允许访问范围之内),使用教育网内地址段免费代理服务器,就可以用于对教育网开放的各类FTP下载上传,以及各类资料查询共享等服务
突破中国电信的IP封锁:中国电信用户有很多网站是被限制访问的,这种限制是人为的,不同Serve对地址的封锁是不同的。所以不能访问时可以换一个国 外的代理服务器试试
提高访问速度:通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度
隐藏真实IP:上网者也可以通过这种方法隐藏自己的IP,免受攻击
一般的访问流程是客户端直接向目标服务器发送请求并获取内容,使用正向代理后,客户端改为向代理服务器发送请求,并指定目标服务器(原始服务器),然后由代理服务器和原始服务器通信,转交请求并获得的内容,再返回给客户端。正向代理隐藏了真实的客户端,为客户端收发请求,使真实客户端对服务器不可见;
举个具体的例子 🌰,你的浏览器无法直接访问谷歌,这时候可以通过一个代理服务器来帮助你访问谷歌,那么这个服务器就叫正向代理
正向代理的用途:
突破IP访问限制
通过缓存加速访问资源
隐藏客户端真实IP
客户端访问授权
与一般访问流程相比,使用反向代理后,直接收到请求的服务器是代理服务器,然后将请求转发给内部网络上真正进行处理的服务器,得到的结果返回给客户端。反向代理隐藏了真实的服务器,为服务器收发请求,使真实服务器对客户端不可见。一般在处理跨域请求的时候比较常用。现在基本上所有的大型网站都设置了反向代理。
举个具体的例子 🌰,去饭店吃饭,可以点川菜、粤菜、江浙菜,饭店也分别有三个菜系的厨师 ,但是你作为顾客不用管哪个厨师给你做的菜,只用点菜即可,小二将你菜单中的菜分配给不同的厨师来具体处理,那么这个小二就是反向代理服务器
反向代理的用途
隐藏服务器真实IP
负载均衡
通过缓存加速访问资源
提供安全保障
[root@localhost ~]# export http_proxy=http://ip:port [root@localhost ~]# export https_proxy=htpp://ip:port
实例
第一步:购买代理IP
第二步:设置IP白名单
这一步是防止你的订单被盗用,我们使用curl cip.cc获取自己的公网IP
将自己的公网IP添加到白名单中
第三步:配置代理服务
[root@localhost ~]# export http_proxy=122.114.112.242:16816 [root@localhost ~]# export https_proxy=122.114.112.242:16816 [root@localhost ~]# curl cip.cc
第四步:取消代理
[root@localhost ~]# unset http_proxy [root@localhost ~]# unset https_proxy
第一步:购买代理IP
我购买的这款为隧道代理,换IP周期为1分钟1次
第二步:依旧是设置白名单
这一步是防止你的订单被盗用,我们使用curl cip.cc获取自己的公网IP 将自己的公网IP添加到白名单中
第三步:修改配置文件
[root@localhost ~]# vim /etc/profile …… export http_proxy=http://j262.kdltps.com:15818 export https_proxy=https://j262.kdltps.com:15818 …… [root@localhost ~]# source /etc/profile
`环境变量 http_proxy:为http变量设置代理;默认不填开头以http协议传输 # 示例 `以下是常见的基本语法 http_proxy=10.0.0.51:16816 http_proxy=http://123.kdltps.com:15818 http_proxy=socks4://10.0.0.51:16816 http_proxy=socks5://10.0.0.51:16816 `如果不想设置白名单,也可以使用用户名和密码进行验证 http_proxy=http://username:password@10.0.0.51:16816 http_proxy=http://username:password@123.kdltps.com:15818 https_proxy:为https设置代理 ftp_proxy:为ftp设置代理 all_proxy:全部变量设置代理,设置了这个的时候上面不需要设置 no_proxy:无需代理的主机或域名;可以使用通配符,多个时使用","号分隔 # 示例: *.aiezu.com,10.*.*.*,192.168.*.* *.local,localhost,127.0.0.1