使用过一段时间的SQUID代理,感觉虽然挺好用的单是过程还是挺曲折的,这个期间也在网络到处搜索了很多关于SQUID的说明文档,和教程。但是显然的还是有那么几个问题,(可能是我个人的问题^_^)

1.版本太少,看来看去就那么几个版本所谓天下文章一大炒,当然这是排在GOOGLE前面的一些资料,也是最容易获得的,也可以满足一般的需要

2.就是要么基础要么太难:看见过一篇难的讲SQUID的源代码(开发者之一)

直到我在图书管发现了一篇算是讲的很好的SQUID的文章,图书馆讲SQUID的 书也看过不少的,但是觉得 讲的还是略微的浅了。知道看见这篇若干年前的书,SQUID确实讲的很好,好东西不敢独吞,拿出来和大家共享。----<<LINUX网络操作经典-高手究极篇>>

如果侵犯作者的版权(我的本意是学习交流的),请作者和我联系,我将删除之

PS:这确实是一本不错的书,讲的几个东西,我个人觉得都还是不错的。

SQUID应用程序文件:

/usr/sbin/squid

;守护进程主程序

/usr/sbin/client

;统计并显示摘要表的内容

/usr/lib/squid/cachemgr.cgi ;可通过WEB查看SQUID运行时的CGI程序

/usr/lib/squid/dnsserver;辅助SQUID处理域名解析

SQUID默认的缓冲目录结构并不重要,因为一般都重新规划缓冲目录,必须注意的是SQUID的记录文件,这些记录文件被默认放在了/var/log/squid目录下面

/var/log/squid

|--access.log;记录客户端所有请求的记录文件

|--store.log;存储缓冲对象的状态及记录文件

|--cache.log;cache的启动及各类状态文件的记录

(我个人比较喜欢分析第一个日志文件,每隔一个礼拜通过这个日志文件产生一个最受欢迎的网站)有兴趣的朋友可以来信所要脚本文件

Squid传统安装的文件结构

用传统的COMPILE方式按章Squid时,SQUID呈现如下的目录结构

/usr/local/squid

|--bin;放置SQUID相关的可执行文件

|    |--RunAccel ;放置SQUID可执行文件

|    |__RunCache

|    |--cachemgr.cgi;查看SQUID实时运行的程序

|    |--Client;统计并显示摘要表的内容

|    |--dnsserver;辅助squid进行域名解析

|    |--squid;squid demon 主程序

|    ---unlinkd

|--etc ;放置SQUID相关配置文件

|    |--errors

|    |--icons

|    |--mib.txt;SQUID-mib定义文件

|    |--mime.conf;定义SQUID识别的MIME TYPE

|    |--mime.conf.default;使用默认

|    |--squid.conf;配置文件

|    |--squid.conf.deault;使用默认

|--logs

|--access.log

|--store.log

|--cache.log

squid的初级配置

RMP格式的SQUID配置文件在/ETC/SQUID/SQUID.CONF文件里,一般来说,只要稍微调整几个设置项目,并可以发挥出SQUID的强大效能。下面的修改都是对这个陪着文件所做一些调整。

1.http_port 命令

SQUID默认传输端口是3128可以通过配置项目http_port来定义,例如如果要将端口配置为8080,那么可以这样来配置

Http_port 8080

2.icp_port命令

SQUID默认与其他的SQUID proxy通讯的端口是3130,如果你要对默认的端口做修改,那么可以如下配置

icp_port 3200

3.cache_peer命令

如果要设置父级的代理服务器,例如proxy.test.edu.cn那么可以这样配置

在#cache_peer hostname type 3128 3130 之下加入

cache_peer proxy.test.edu.cn parent 3128 3130 no-query no-netdb-exchange

如果要设置同级的代理服务器,如:192.168.1.41 192.168.1.42则可以这样来配置

cache_peer 192.168.1.41 sibling 3128 3130 proxy-only

....

注意目前各单位施行代理服务器分级管理,设置父级代理服务器,还必须取得上层单位的同意

说明:

(1)命令cache_peer的定义格式是:

cache_peer hostname type 3128 3130

hostname 是用来指定获取缓冲的PROXY主机的名字

type 是PROXY主机的类型,有以上PARENT SIBLING两种

3128:HTTP_PORT

3130:ICP_PORT

(2)附加配置选项(注意应为小写,配置时)

NO-QUERY:不做查询操作,直接获取数据

NO-NETDB-EXCHANGE:代理服务器之间不交互信息

NO-DIGEST:代理服务器之间不做摘要表查询,直接用ICP协议沟通(同级代理)

PROXY-ONLY:直接获取对方缓冲,转交给代理服务器的客户端,而不存入本地

ROUND-ROBIN:如果设置数部上层服务器,那么轮流查询父级服务器

LOGIN=USER:PASSWD:要求对方做帐号及密码验证,例如

cache_peer 192.168.1.41 sibling 3128 3130 login=kao:123456

4 cache_mem命令

SQUID默认运行本代理服务器的高速缓存内存空间为8MB,而默认存放缓冲数据的内存空间是100MB,当然这可能无法满足您的要求,为了加快您的服务器处理速率,可以修改这些配置,例如

cache_mem 92mb

说明:

(1)cache_mem后使用的内存数值,默认是以BYTE为单位,例如64kb=65536,也可以使用KB,MB,GB为单位

(2)cache_mem后设置的内存大小,应该约为实际内存的1/3

(3)如果本机只做代理服务器,则CACHE_MEM可以提升到本机内存的1/2-3/4

5 cache_dir命令

修改玩CACHE_MEM定义后,接着用cache_dir命令重新定义缓冲区目录位置,及缓冲目录的大小,用法如下:

#cache_dir type directory-name mBytes level-1 leverl2

在#ufs/var/spool/squid 100 16256之下加入如下的配置

cache_dir ufs /cache1 2048 128 256

说明:

(1)UFS栏:设置缓冲存储的系统类型,这是2.3版本以后才有的新参数,缓冲类型有UFS,ASYNCUFS两种,一般都是用ufs,asyncufs用于异步的IO传输,在LINUX 或者SOLARIS系统上使用ASYNCUFS选项相当危险。

(2)/CACHE1栏:设置缓冲的目录的路径

(3)2048栏:设置缓冲的空间大小默认单位是MB

(4)128栏:第一层的缓冲目录数,默认是16

(5)256栏:第二层的缓冲目录数,默认是256,即每一个一层的缓冲的目录下面有256个缓冲目录

SQUID的默认缓冲空间在/VAR/SPOOL/SQUID目录下,如果想增加缓冲目录,请先参考这一节规划缓冲目录,再设置如下

cache_dir ufs /cache1 4096 64 128

cache_dir ufs /cache2 4096 64 128

cache_dir ufs /cache3 4096 64 128

cache_dir ufs /cache4 4096 64 128

注意:

如果只有一块硬盘,最好分割一到数块独立的分区来做缓冲空间,如果有两个硬盘,那么每一块最好都分割数块分区来做缓冲空间,这样可以提高SQUID的存取效率

SQUID的大致配置如此,不过不同的版本可能有所差异,另外为了 拒绝客户端存取代理服务器的默认值为拒绝获取缓冲数据,应该要加入:

#http_access deny all;关闭拒绝获取CACHE数据

详细的存取控制方法,参考下面的章节

squid 的配置详解 (转)--SeriesI相关推荐

  1. squid 的配置详解 (转)--SeriesI 收藏

    squid 的配置详解 (转)--SeriesI 收藏   使用过一段时间的SQUID代理,感觉虽然挺好用的单是过程还是挺曲折的,这个期间也在网络到处搜索了很多关于SQUID的说明文档,和教程.但是显 ...

  2. squid 的配置详解 (转)--SeriesIV

    透明代理 有一种称为透明代理的方案,可以让内部用户不用设置代理服务器地址和传输端口,当客户端连接到网络的时候,感觉可以象直接上网一样,实际上却是通过代理服务器浏览网页,这种透明的方式可以解决内部网络的 ...

  3. squid 的配置详解 (转)--SeriesIII

    SQUID LOG 文件处理 在/var/log/squid目录下面,有三个非常重要的文件,access.log stroe.log和cache.log 这三个文件的说明在前面的小节已经讲过,在这里再 ...

  4. squid 的配置详解 (转)--SeriesII

    其他常用的设置 1.cache_swap_low 与 cache_swap_high命令 当PROXY CACHE的容量不断的扩增的时候,虽然可以提高缓冲的命中率(HIT RATE),但是当缓冲容量达 ...

  5. Nginx指南和配置详解

    Nginx指南 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 因它的稳定性 ...

  6. elasticsearch-.yml(中文配置详解)

    此elasticsearch-.yml配置文件,是在$ES_HOME/config/下 elasticsearch-.yml(中文配置详解) # ======================== El ...

  7. (ASA) Cisco Web ××× 配置详解 [三部曲之一]

    (ASA) Cisco Web ××× 配置详解 [三部曲之一] 注意:本文仅对Web×××特性和配置作介绍,不包含SSL ×××配置,SSL ×××配置将在本版的后续文章中进行介绍.   首先,先来 ...

  8. mybatis 同名方法_MyBatis(四):xml配置详解

    目录 1.我们将 数据库的配置语句写在 db.properties 文件中 2.在 mybatis-configuration.xml 中加载db.properties文件并读取 通过源码我们可以分析 ...

  9. logback节点配置详解

    logback节点配置详解 一:根节点 <configuration></configuration> 属性 : debug : 默认为false ,设置为true时,将打印出 ...

最新文章

  1. html input不可编辑
  2. Hibernate5.x Idea搭建
  3. poj2478 Farey Sequence (欧拉函数)
  4. python 股票指标库talib_股票指标库 TA-Lib 安装方法
  5. SQL Server 2005 Integration Services (SSIS) (2) - 导入/导出向导
  6. Android免Root环境下Hook框架Legend原理分析
  7. 家庭接入: dsl 电缆ftth 拨号和卫星_家庭宽带的路由器升级之路
  8. Android插件化开发基础之静态代理模式
  9. ODPS2.0重装上阵,优化提升SQL语言表达能力
  10. SRM 625 DIV2
  11. 7-207 排序 (25 分)
  12. 攻防世界reverse新手练习
  13. Linux的磁盘系统和文件系统显示的文件大小为什么不一样(du指令和ls指令的区别)...
  14. archlinux 分区
  15. python取出列表的第一列_python取第一列
  16. C/C++:计算N的N次方的个位数(火眼金睛找规律,解决此题数据问题)
  17. PHP多用户商城系统 应该怎么选
  18. 酒店网站建设需要多少钱
  19. Processing基础——钟表(简单)
  20. IMX6ULL 主频和时钟配置

热门文章

  1. labview的介绍,安装和卸载
  2. moodeaudio 源码_MoodeAudio 音频播放器上手配置
  3. efinance获取基金、股票、债券、期货K线数据
  4. Flink java模拟生成自定义流式数据
  5. 时间戳转datetime格式
  6. 解决cannot import name ‘finance‘ from ‘matplotlib‘报错与问题解析
  7. 以太坊使用puppeth工具
  8. 自定义日志_Dubbo自定义日志拦截器源码分析
  9. Redis那些事(一) — Redis简介
  10. win10下wifi链接成功,qq可以登录,浏览器无法上网的问题处理