代理服务器

图解正向代理、反向代理、透明代理

拟墨画扇 提交于 2020-03-24 11:54:35
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。 http://z00w00.blog.51cto.com/515114/1031287 套 用古龙武侠小说套路来说,代理服务技术是一门很古老的技术,是在互联网早期出现就使用的技术。一般实现代理技术的方式就是在服务器上安装代理服务软件,让 其成为一个代理服务器,从而实现代理技术。常用的代理技术分为正向代理、反向代理和透明代理。本文就是针对这三种代理来讲解一些基本原理和具体的适用范 围,便于大家更深入理解代理服务技术。 一、 正向代理 (Forward Proxy) 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术。关于正向代理的概念如下: 正 向代理(forward)是一个位于客户端【用户A】和原始服务器(origin server)【服务器B】之间的服务器【代理服务器Z】,为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代 理服务器Z向服务器B转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。如下图1.1 (图1.1) 从上面的概念中,我们看出,文中所谓的 正向代理 就是 代理服务器替代访问方【用户A】去访问目标服务器【服务器B】 这就是正向代理的意义所在。而为什么要用代理服务器去代替访问方

Nginx Location配置总结

有些话、适合烂在心里 提交于 2020-03-23 18:30:54
3 月,跳不动了?>>> 语法规则: location [=|~|~*|^~] /uri/ { … } = 开头表示精确匹配 ^~ 开头表示uri以某个常规字符串开头,理解为匹配url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static//aa匹配到(注意是空格)。 ~ 开头表示区分大小写的正则匹配 ~* 开头表示不区分大小写的正则匹配 !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则 / 通用匹配,任何请求都会匹配到。 多个location配置的情况下匹配顺序为(参考资料而来,还未实际验证,试试就知道了,不必拘泥,仅供参考): 首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 /通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。 例子,有如下匹配规则: location = / { #规则A } location = /login { #规则B } location ^~ /static/ { #规则C } location ~ \.(gif|jpg|png|js|css)$ { #规则D } location ~* \.png$ { #规则E } location !~ \.xhtml$ { #规则F } location !~* \.xhtml$ { #规则G }

TFS持续集成

一个人想着一个人 提交于 2020-03-19 08:01:05
TFS持续集成的就是跟踪代码变更,合并,能够自定义脚本,任务进行自动化测试,发版,部署,有点像docker的味道。在这个代理服务器分布式中tfsserver起着能够随时拿去最新代码能够统一执行任务的角色,所不同的是代理服务器仅仅是执行具体的编译,而tfs起着统一管理,调度,安排的作用。 那么tfs持续集成是怎么实现的? 1 来看一篇博客 http://www.cnblogs.com/zjoch/p/5741499.html 先要理解tfs的持续集成的架构,即分布式架构,一个服务器可以配置多个代理池,每个代理池可以注册不同的代理服务器,每个代理服务器可以被定义多个任务 那么首先来解释一下代理池是什么? 代理池其实就是一个容器与线程池的机制类似,他动态的监视代理服务器的状态,当还有任务需要执行,在代理池中分配空闲的代理服务器给任务进行执行,就是这么简单的理解就可以了 2 代理服务器 是的代理服务器,就是相当于公司部署了一个tfsserver,比我这个server是12的地址,有一天我自己下载一个代理服务器包到本地执行相关的配置命令然后搞一个windows服务器启动起来去tfsserver认证就可以了,其实认证的时候也就注册了,两边分布式的进行,注册上了就可以给代理池使用了。 3 注册代理服务器的过程蛋疼的事儿 不得不说windows ms应该是一直以来都没有把权限机制吃透

LoadRunner常见问题整理

爷,独闯天下 提交于 2020-03-18 21:53:11
1.LoadRunner录制脚本时为什么不弹出IE浏览器?   当一台主机上安装多个浏览器时, LoadRunner 录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决。   启动浏览器,打开Internet选项对话框,切换到高级标签,去掉“启用第三方浏览器扩展(需要重启动)”的勾选,然后再次运行VuGen即可解决问题   提示:通常安装Firefox等浏览器后,都会勾选上面得选项,导致不能正常录制。因此建议运行LoadRunner得主机上保持一个干净的 测试 环境。    2.录制 Web 脚本时,生成的脚本中存在乱码该如何解决?   录制脚本前,打开录制选项配置对话框Record-Options,进入到Advanced标签,先勾选“Support charset”,然后选择中支持UTF-8。再次录制,就不会出现中文乱码问题了。    3.HTML-based script与URL-based script的脚本有什么区别?   使用“HTML-based script”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用“URL-based script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。   通常,基于浏览器的Web应用会使用“HTML

LoadRunner录制脚本问题收集

被刻印的时光 ゝ 提交于 2020-03-17 08:55:41
LoadRunner录制脚本问题收集 (2011-10-26 10:34:20) LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决: 启动浏览器,打开Internet选项对话框,切换到高级标签,去掉“启用第三方浏览器扩展(需要重启动)”的勾选,然后再次运行VuGen即可解决问题。 提示 :通常安装Firefox等浏览器后,都会勾选上面得选项,导致不能正常录制。因此建议运行LoadRunner得主机上保持一个干净的测试环境。 录制Web脚本时,生成的脚本中存在乱码该如何解决? 录制脚本前,打开录制选项配置对话框Record-Options,进入到Advanced标签,先勾选“Support charset”,然后选择中支持UTF-8。再次录制,就不会出现中文乱码问题了。 HTML-based script与URL-based script的脚本有什么区别? 使用“HTML-based script”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用 “URL-based script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。通常

正向代理与反向代理的区别

两盒软妹~` 提交于 2020-03-15 10:18:29
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板, 简单的说, 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 这个代理服务器呢,他能访问那个我不能访问的网站 于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容 代理服务器去取回来,然后返回给我 从网站的角度,只在代理服务器来取内容的时候有一次记录 有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站 结论就是 正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。 反向代理的概念 继续举例: 例用户访问 http://ooxx.me/readme 但ooxx.me上并不存在readme页面 他是偷偷从另外一台服务器上取回来,然后作为自己的内容吐给用户 但用户并不知情 这很正常,用户一般都很笨 这里所提到的 ooxx.me 这个域名对应的服务器就设置了反向代理功能 结论就是 反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理 的命名空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处

负载均衡

☆樱花仙子☆ 提交于 2020-03-15 05:54:09
负载均衡(Load Balance)   由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将造成现有资源的浪费,而且如果再面临下一次业务量的提升时,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量增长的需求。   针对此情况而衍生出来的一种廉价有效透明的方法以扩展现有网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的来实现的,在DNS中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。DNS负载均衡是一种简单而有效的方法,但是它不能区分服务器的差异,也不能反映服务器的当前运行状态。   2、代理服务器负载均衡 使用代理服务器,可以将请求转发给内部的服务器,使用这种加速模式显然可以提升静态网页的访问速度。然而,也可以考虑这样一种技术,使用代理服务器将请求均匀转发给多台服务器,从而达到负载均衡的目的。   3、地址转换网关负载均衡 支持负载均衡的地址转换网关,可以将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。   4、协议内部支持负载均衡

Linux下部署squid代理服务器

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-12 09:06:28
目录 1.squid介绍 2.正向代理 3.反向代理 1.squid介绍 Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。 用途: 通过缓存的方式为用户提供web访问加速 对用户的web访问进行过滤控制 服务名:squid 主配置文件:/etc/squid/squid.conf 监听端口:3128 Squid 是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器(比如:http://squid.nlanr.net/)并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。 2.正向代理 正向代理: 意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。典型的正向代理是一种最终用户知道并主动使用的代理方式 2.1、实验环境 ①

nignx正向代理,nginx反向代理

。_饼干妹妹 提交于 2020-03-12 08:11:08
nginx正向代理 正向代理就是假设有一个内网 内网有两台机器,这两台机器只有 a 可以上网 b 不能上网,但是 a 和 b 通过网络相连接 这时如果 b 想访问外网,就可以通过 a 来正向代理访问外网 正向代理就是在内网中模拟目标服务器,把内网中其它机器的请求 转发给外网中的真正的目标服务器 所以正向代理是接受内网其它机器的请求的 反向代理则是反过来 也是一个内网,有几台机器,只有其中一台与外网连接 但是反向代理接受的不是内网机器的访问请求 反向代理接受的是外网过来的访问请求 然后把请求转发到内网中的其它机器上去 外网发出请求的用户并不知道反向代理的服务器把请求转发给了谁 要在一台机器上设置正向代理的功能 如图,编辑一个nginx配置文件 上图就是配置文件内容 如果配置一台服务器作为正向代理服务器 那么这个虚拟主机配置文件就必须是默认虚拟主机 因为所有访问这台机器的网络请求应该先访问这个虚拟主机才对 所以这里要设置 default_server 然后还要把原来的 默认虚拟主机 配置文件名称修改掉 如图,把 default.conf 配置文件的名称修改一下 这样就取消了原来的默认虚拟主机配置文件了 因为默认的默认虚拟主机配置文件就是 default.conf 配置文件里面的 resolver 119.29.29.29 意思是配置一个 dns 地址 因为是做正向代理

Linux中Apache的管理及使用(2)

删除回忆录丶 提交于 2020-03-11 16:54:36
一、Apache的虚拟主机 在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录。Apache虚拟主机配置有三种方法:基于IP配置、基于域名配置和基于端口配置。 1.1配置虚拟机 子配置文件: / etc / httpd / conf . d/ * . conf 主配置文件: / etc / httpd / conf / httpd . conf [root@apache conf.d] # vim /etc/httpd/conf.d/VirtHost.conf 1.2测试 二、Apache的语言支持 2.1默认支持html 2.2php 设置支持php语言 安装 dnf install php -y 2.3apache的配置帮助 安装: dnf install httpd-manual -y 2.4cgi语言支持 三、Apache的加密访问 3.1http:超文本传输协议,使用tcp端口默认使用80,默认情况下是明文传输,数据可以通过抓取工具包来捕获到,因此在interner上,有些比较重要的站点http服务器需要使用PKI(公钥基础结构)技术来对数据加密!这也就是https. 3.2https:安全的超文本传输协议,使用TCP 端口443,他的数据会用PKI中的公钥进行加密,这样抓取工具捕获到的数据包是无法查看的