Squid代理服务器是一种缓存服务器,一般分为正向代理和反向代理。

1、正向代理

客户端因为网络或者其他的问题,不能访问到一台Apache服务器,如果要访问到,则需要通过一台中间的代理服务器,这就是Squid的正向代理。

Squid代理服务器可以访问到这个Apache服务器,并且缓存访问到的内容,再将缓存的内容给客户端看。

为了演示需要,本文中主机"double"有两个网卡,一个IP为"172.25.254.202",一个IP为"172.25.2.202"。主机"single"的IP为"172.25.2.102"。Apache服务器为"172.25.254.2"。"double"可以访问到Apache,且可以连接到"single"。"single"只能连接到"double",不能访问到Apache。

本文中的Squid代理服务器为"double",以使用"yum install squid -y"装好Squid服务,为了方便,直接关闭防火墙。

正向代理服务器的配置如下:

在Squid服务器端配置。编辑Squid的配置文件"/etc/squid/squid.conf",将第56行的"deny"改为"allow"。将第62行的注释去掉。完成后重启服务。

在客户端配置。在客户端打开浏览器"firefox",点击左上角的"Edit"下的"Perferences",点击最后的"Advanced"下的"Network",在"Connetion"后点击"Settings"。按照下图输入IP和端口号,IP是Squid服务器中和自己一个网段的IP,端口号是3128。

完成上述配置后,在"single"客户端的浏览器中重新输入"172.25.254.2",就可以看到这个网页了。

正向代理客户端访问的是Squid服务器的缓存,适用于客户端不能直接访问目标主页,需要一个中间服务器Squid。

2、反向代理

反向代理是客户端访问的目标是Squid服务器,Squid服务器通过访问有Apache的主机并缓存其网页内容,再反馈给客户端,客户端看到的依旧是Squid服务器的缓存,但是与正向代理不同的是,反向代理中客户端并不知道有Apache主机的存在,而直接访问Squid服务器,而且客户端不需要自己进行设置。反向代理通常用于Apache的访问加速和减小Apache主机的访问压力。

反向代理服务器的配置如下:

在Squid服务器端配置。编辑配置文件"/etc/squid/squid.conf",将第59行的"3128"改为"80",并在后面加上"vhost vport",在第58行添加"cache_peer 172.25.254.2 parent 80 0 proxy-only"。完成后重启"squid"服务。

反向代理不需要在客户端进行配置。

需要注意的是Squid服务器上并没有Apache。

完成上述配置后,在客户端的浏览器中,直接输入要访问的Squid服务器"172.25.2.202",则可以看到Apache主机"172.25.254.2"的主页。

上述就是Squid代理服务器中常用的正向和反向代理,这种代理服务器在网络中很普遍。

linux初学者-squid代理篇的更多相关文章

  1. linux初学者-系统启动故障篇

    linux初学者-系统启动故障篇 在系统的操作中,有时会不小心误删或者操作失误使得系统启动不起来,下文将列举几种常见的系统启动失败的情况及解决的办法. 1.删除或者覆盖mbr的446个字节 mbr的4 ...

  2. linux初学者-数据库管理MariaDB篇

    linux初学者-数据库管理MariaDB篇 MariaDB是一种数据库管理系统,是MySQL的一个分支,但是比MySQL更加优秀,可以说是MySQL的替代品.MariaDB使用的是SQL语句.下文将 ...

  3. linux初学者-网络桥接篇

    linux初学者-网络桥接篇 在网络的使用中,有时需要搭建网络桥来实现网络桥接.例如在一台主机上制作一台虚拟机,虚拟机是没有物理网卡的,这时虚拟机数据的发送和接收就需要通过主机上的物理网卡,需要主机的 ...

  4. linux初学者-DDNS配置篇

    linux初学者-DDNS配置篇 如果DNS服务器要记录多台主机的IP,且这些主机的IP都是通过DHCPD服务自动获取的,那么将会造成很大的困难,因为在DNS设置时无法得知主机具体的IP.如果DHCP ...

  5. linux初学者-DNS配置篇

    linux初学者-DNS配置篇 DNS在之前的网络管理篇已经做过介绍,下文将叙述DNS在学习工作中的一些配置以及应用. 1.高速缓存DNS 一台主机通过DNS服务器询问域名解析IP是需要一定的时间的, ...

  6. linux初学者-磁盘加密篇

    linux初学者-磁盘加密篇 因为保密需要,一般系统中会在文件和磁盘中进行加密,但是文件的加密比较容易破解,不安全.所以在特殊需要下,会对磁盘进行加密,磁盘加密后在磁盘损坏的同时,其中的数据也会损坏, ...

  7. linux初学者-磁盘配额篇

    linux初学者-磁盘配额篇 在使用磁盘时,只要有权限,不管什么用户都可以在其中写入数据,但是如果是多人在一个磁盘中写入数据,就会出现争议,如果一个用户将磁盘空间用完,那么其他人无法再使用.如下图所示 ...

  8. linux初学者-swap分区篇

    linux初学者-swap分区篇 swap是虚拟内存,是在硬盘中分区一块区域,当内存占满但是又急迫需要时临时当作内存使用,使用效率低于内存.本文将对linux系统中swap分区的建立做一个简要介绍. ...

  9. linux初学者-虚拟机联网篇

    linux初学者-虚拟机联网篇 在虚拟机的使用过程中,本机可以连接WIFI直接上网,但是有时候需要用到虚拟机的联网,那么在本机联网的情况下,虚拟机怎么联网呢?接下来将介绍如何在本机已经连接到WIFI的 ...

随机推荐

  1. SQL基础复习2

    一.视图 1.创建视图      创建视图后加 WITH CHECK OPTION 2.视图查询 数据库系统的处理方法: 视图消解法(View Resolution) 步骤: 进行有效性检查-> ...

  2. WIN8安装oracle11g时出现不满足最低配置解决办法

    Windows8上面安装Oracle11g客户端和服务端时都会出现这样的错误提示:[INS-13001]环境不满足最低要求 产生这种报错的主要原因在于:oracle 11g的配置文件中并没有提供匹配w ...

  3. ORACLE(emp)表习题与答案

    因为答案都是小编自己写的,解法可能有多种,如果您觉得我的解法有误,希望您有时间给我留言. 一.习题 (1) 查询20部门的所有员工信息. SELECT * FROM emp where deptno ...

  4. Spark学习之路(六)—— 累加器与广播变量

    一.简介 在Spark中,提供了两种类型的共享变量:累加器(accumulator)与广播变量(broadcast variable): 累加器:用来对信息进行聚合,主要用于累计计数等场景: 广播变量 ...

  5. 手把手docker部署java应用(初级篇)

    本篇原创发布于 Flex 的个人博客:点击跳转 前言   在没有 docker 前,项目转测试是比较麻烦的一件事.首先会化较长的时间搭建测试环境,然后在测试过程中又经常出现测试说是 bug,开发说无法 ...

  6. 新补充 JSSSS

    条件语句 补充: var a=“hello world” a这个变量是字符串了 对于里面每一个字母来说 他是字节 里面有11个字节 字节总数用length表示 如下: 根据上面的内容咱们又发现了一个运 ...

  7. java代码书写易犯错误

    java代码书写易犯错误: 常见报错: 控制台报错: 找不到或无法加载主类 HelloWorld 原因: java.lang.NoClassDefFoundError: cn/itcast/day01 ...

  8. [MFC.Windows程序设计(第2版) 第一章

    1,windows编程模型如下图: 2, windows的消息有成百上千种,以下列举10个: 3,消息处理函数的四个参数:窗口句柄(表示消息属于哪个窗口,32值.该窗口句柄引用一个数据结构,数据结构存 ...

  9. HTML5新增的表单验证功能

    一.HTML5表单的特点: HTML5 表单增加了许多内置的控件和控件属性 XHTML 中需要放在 form 之中的诸如 input/button/select/textarea 等标签元素,在 HT ...

  10. javascript——原型与原型链

    一.prototype 在JavaScript中,每个函数都有一个prototype属性,这个属性指向函数的原型对象. 例如: function Person(age) { this.age = ag ...