便民 发表于 2017-4-17 17:15:36

squid资料整理

  Squid是一种用来缓冲Internet数据的软件。
  它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器(比如:http://squid.nlanr.net/)并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和WAIS等协议。但它不能处理如POP,NNTP,RealAudio以及其它类型的东西。
  Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。
  Squid将数据元缓存在内存中,同时也缓存DNS查询的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP(轻量Internet缓存协议),Squid能够实现层叠的代理阵列,从而最大限度地节约带宽。
  Squid由一个主要的服务程序squid,一个DNS查询程序dnsserver,几个重写请求和执行认证的程序,以及几个管理工具组成。当Squid启动以后,它可以派生出预先指定数目的dnsserver进程,而每一个dnsserver进程都可以执行单独的DNS查询,这样一来就大大减少了服务器等待DNS查询的时间。
  1、初始化在 squid.conf 里配置的 cache 目录

[*]#squid/sbin/squid -z //第一次启动squid服务时必须输入此命令

  2、检查 squid.conf 的 语法和配置。

[*]#squid/sbin/squid -k parse

  3、在前台启动squid,并输出启动过程。

[*]#squid/sbin/squid -N -d1

  如果有到 ready to server reques,恭喜,启动成功。
  然后 ctrl + c,停止squid,并以后台运行的方式启动它。
  4、启动squid在后台运行。

[*]#squid/sbin/squid -s

  这时候可以 ps -A 来查看系统进程,可以看到俩个 squid 进程。
  5、停止 squid

[*]#squid/sbin/squid -k shutdown

  6、重引导修改过的 squid.conf

[*]#squid/sbin/squid -k reconfigure

  7、把squid添加到系统启动项
  添加如下行:

[*]#vi /etc/rc.d/rc.local
[*]/usr/local/squid/sbin/squid -s

  当然,并不是每个人都喜欢这种启动方式,你可以用你最习惯的方式;或者把它安装为服务。
  8、查看你的日志文档。

[*]
[*]#more /var/logs/squid/access.log | grep TCP_MEM_HIT

  该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。

[*]#more var/logs/squid/access.log | grep TCP_HIT

  该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。

[*]#more /var/logs/squid/access.log | grep TCP_MISS

  该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是现重原始服务器获取并返回给访问用户。
  9、

[*]squid -k rotate

  轮换squid的日志文件/var/log/squid,Squid代理服务器日志文件
  的增长速度是惊人的,很容易点球满磁盘空间导致系统不能正常工作,甚至是死机.
为了解决日志文件增长太快的问题,squid采用了”轮换”的方法.在squid.conf中可以通过logfile_rotate来设置文件轮换的个数,如:

[*]logfile_rotate 10

  轮换的工作一般用crontab定时器完在周期性的日志轮换,例如每周六凌晨2:00进行日志轮换,则执行如下命令:

[*]#crontab -e
[*]0 2 * * 6 squid -k rotate

  10、 Squid默认的错误提示信息为英文,对于英文不好的用户来说,实在不方便.在/etc/squid/squid.conf里添加如下:
  error_directory /usr/share/squid/errors/Simplify_Chinese 即可显示中文的错误提示。
  11、
*取得squid运行状态信息:

[*]squidclient -p 80 mgr:info

  *取得squid内存使用情况:

[*]squidclient -p 80 mgr:mem

  *取得squid已经缓存的列表:

[*]squidclient -p 80 mgr:objects. use it carefully,it may crash

  *取得squid的磁盘使用情况:

[*]squidclient -p 80 mgr:diskd

  *强制更新某个url:

[*]squidclient -p 80 -m PURGE http://www.hacder.com

  *更多的请查看:

[*]squidclient -h

  或者

[*]squidclient -p 80 mgr:

  12. 列出当前可用的命令:

[*]#squidclient -p 80 mgr:menu
[*]
[*]mem          Memory Utilization   public
[*]cbdata      Callback Data Registry Contents public
[*]events      Event Queuepublic
[*]squidaio_counts    Async IO Function Counters   public
[*]coss         COSS Stats   public
[*]diskd         DISKD Statspublic
[*]config      Current Squid Configurationhidden
[*]ipcache      IP Cache Stats and Contentspublic
[*]fqdncache       FQDN Cache Stats and Contents public
[*]idns         Internal DNS Statistics public
[*]external_acl   External ACL stats   public
[*]http_headers   HTTP Header Statistics public
[*]menu         This Cachemanager Menu public
[*]shutdown       Shut Down the Squid Processhidden
[*]offline_toggle    Toggle offline_mode settinghidden
[*]info         General Runtime Informationpublic
[*]filedescriptors    Process Filedescriptor Allocation   public
[*]objects      All Cache Objects   public
[*]vm_objects      In-Memory and In-Transit Objects    public
[*]openfd_objects    Objects with Swapout files open public
[*]pending_objects    Objects being retreived from the network    public
[*]client_objects    Objects being sent to clients public
[*]io          Server-side network read() size histograms   public
[*]counters       Traffic and Resource Counters public
[*]peer_select      Peer Selection Algorithms   public
[*]digest_stats   Cache Digest and ICP blob   public
[*]5min         5 Minute Average of Counterspublic
[*]60min         60 Minute Average of Counters public
[*]utilization      Cache Utilization   public
[*]histograms      Full Histogram Counts public
[*]active_requests    Client-side Active Requestspublic
[*]store_digest   Store Digestpublic
[*]storedir       Store Directory Stats public
[*]store_check_cachable_statsstoreCheckCachable() Stats   public
[*]store_io       Store IO Interface Stats    public
[*]pconn         Persistent Connection Utilization Histogramspublic
[*]refresh      Refresh Algorithm Statisticspublic
[*]delay         Delay Pool Levels   public
[*]forward      Request Forwarding Statistics public
[*]client_list      Cache Client List   public
[*]asndb         AS Number Database   public
[*]server_list      Peer Cache Statistics public


《Squid 权威中文教程》我已经上传到“我的资源”。 地址是http://spring21st.download.csdn.net/
页: [1]
查看完整版本: squid资料整理