`

squid

 
阅读更多

 

一、确保Linux 系统中装有NET-SNMP 协议

 

1.Net-snmp 获取与安装

 

NET-SNMP官方网站:[url]http://www.net-snmp.org/[/url]

 

# tar zxvf net-snmp-5.2.4.tar.gz

 

# cd net-snmp-5.2.4

 

# ./configure –prefix=/usr/local/net-snmp --enable-developer --with-mib-modules="host agentx examples/example"

 

# make

 

# make install

 

 

 

# ln –s /usr/local/net-snmp/bin/* /usr/local/bin/

 

或使用环境变量:

 

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/net-snmp/bin:/usr/local/net-snmp/sbin"

 

 

 

# cp EXAMPLE.conf  /usr/local/net-snmp/share/snmp/snmpd.conf

 

2.Net-snmp 的配置

 

# vi /etc/rc.d/rc.local

 

//rc.local上加入一行/usr/local/net-snmp/sbin/snmpd &,系统启动时启动SNMP服务。

 

 

 

修改snmpd.conf 文件,community 为你自定义的snmp字符串,source为允许访问的网络来源,必须指定,否则无法被监控

 

 

 

vi /usr/local/net-snmp/share/snmp/snmpd.conf

 

把这句

 

com2sec local     localhost       COMMUNITY

 

com2sec mynetwork NETWORK/24      COMMUNITY

 

改为

 

com2sec local     localhost      public

 

com2sec mynetwork 192.168.1.0/24      public

 

 

 

//192.168.1.0snmp这台机器所以的网段(注意:不充许为192.168.1.1)

 

3.Net-snmp 常用命令

 

# /usr/local/net-snmp/sbin/snmpd     //启动SNMP服务

 

 

 

##########################################################

 

用如下命令测试:

 

snmpget -v 1 -c public localhost system.sysUpTime.0

 

snmpwalk -v 1 -c public localhost system

 

查看日志:

 

tail -f /var/log/snmpd.log

 

 

 

#########################################################

 

控制台显示日志

 

 

 

snmptrapd -f -Le -d -M /usr/local/net-snmp/share/snmp/mibs -m ALL

 

 

 

#########################################################

 

1.启动snmpd服务

 

   #/usr/local/sbin/snmpd -d

 

 

 

   //snmptrapd的启动类似

 

 

 

2.重启snmpd服务

 

 

 

  #/etc/rc.d/init.d/snmpd restart

 

 

 

3. 系统启动时启动SNMP服务

 

  #vi /etc/rc.d/rc.local

 

   //rc.local上加入一行/usr/local/net-snmp/sbin/snmpd,系统启动时启动SNMP服务。

 

 

 

4.重启snmpd服务

 

  #cd /etc/rc.d/init.d

 

  #snmpd restart

 

 

 

#service snmpd restart

 

二、Squid

 

1.检查linux是否存在squid老版本

 

#  rpm -qa|grep squid

 

#  rpm -e squid  //删除squid老版本

 

2.Squid 获取与安装

 

   wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE18.tar.gz

 

   #  tar -zxvf squid-3.0.STABLE18.tar.gz

 

   #  cd squid-3.0.STABLE18

 

   # ./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc/ --bindir=/usr/local/squid/bin --sbindir=/usr/local/squid/sbin --mandir=/usr/local/squid/share/man --enable-gnuregex --enable-carp --enable-async-io=80 --enable-removal-policies=heap,lru --enable-icmp --enable-delay-pools --enable-useragent-log --enable-referer-log --enable-kill-parent-hack --enable-snmp --enable-arp-acl --enable-htcp --enable-cache-digests --enable-default-err-language=Simplify_Chinese --enable-err-languages="Simplify_Chinese" --enable-poll --enable-linux-netfilter --disable-ident-lookups --enable-underscores --enable-auth="basic" --enable-basic-auth-helpers="NCSA" --enable-external-acl-helpers="ip_user" --enable-x-accelerator-vary

 

   #  make

 

   #  make install

 

#  cd ./helpers/basic_auth/NCSA/

 

#  make

 

#  cp ncsa_auth /usr/sbin/

 

#  htpasswd -c /usr/local/squid/password <用户名>

 

 

 

./configure --prefix=/usr/local/squid \           #指定squid安装目录

 

--mandir=/usr/local/squid/share/man \                        #指定man的安装目录

 

--enable-async-io=20 \                               #采用同步io提高性能,负载高可设大点

 

--disable-icmp \                                  #禁止icmp协议代理(默认不允许)

 

--enable-delay-pools \                                #允许延迟限止带宽

 

--enable-cache-digests \                       #允许缓存摘要,可以加快请求缓冲内容的速度(集群用)

 

--enable-snmp \                                         #允许snmp协议支持(如用mrtg进行流量监控等)

 

--disable-ident-lookups \                            #禁止使用RFC931识别

 

--enable-epoll \                                  #支持epollIO模式,2.6以上内核才具有

 

--enable-basic-auth-helpers="NCSA"           #允许带密码验证,NCSA 风格的用户名和密码档

 

--enable-linux-netfilter                        #允许透明代理

 

--enable-arp-acl                                  #允许基于MAC地址的存取过滤

 

--enable-err-language="Simplify_Chinese"         #支持的错误语言

 

--enable-default-err-language="Simplify_Chinese"     #指定默认的错误语言

 

3.Squid 配置

 

# mv -f /usr/local/squid/etc/squid.conf /usr/local/squid/etc/squid.conf.bak

 

# vi /usr/local/squid/etc/squid.conf

 

 

 

http_port 192.168.253.8:3128 transparent

 

icp_port  3130

 

 

 

cache_dir aufs /usr/local/squid/var/cache 25000 16 256

 

 

 

cache_access_log /usr/local/squid/var/logs/access.log

 

cache_log /usr/local/squid/var/logs/cache.log

 

cache_store_log /usr/local/squid/var/logs/store.log

 

pid_filename /usr/local/squid/var/logs/squid.pid

 

 

 

 

 

http_access deny all

 

http_access allow all

 

 

 

cache_effective_user   nobody

 

cache_effective_group  nobody

 

cache_mgr x_liyajun@aspire-tech.com

 

 

 

acl SSL_ports port 443

 

acl Safe_ports port 80          # http

 

acl Safe_ports port 21          # ftp

 

acl Safe_ports port 443         # https

 

acl Safe_ports port 70          # gopher

 

acl Safe_ports port 210         # wais

 

acl Safe_ports port 1025-65535  # unregistered ports

 

acl Safe_ports port 280         # http-mgmt

 

acl Safe_ports port 488         # gss-http

 

acl Safe_ports port 591         # filemaker

 

acl Safe_ports port 777         # multiling http

 

acl Safe_ports port 161         # multiling http

 

acl CONNECT method CONNECT

 

http_access allow all

 

 

 

##########################################################

 

#acl snmpManager 192.168.253.8/255.255.255.255

 

 

 

acl localhost src 127.0.0.1/32

 

 

 

snmp_port 3401

 

acl snmppublic snmp_community public

 

snmp_access allow snmppublic localhost

 

 

 

 

 

# mkdir -p /usr/local/squid/var/cache

 

# chown -R nobody:nobody /usr/local/squid/var

 

 

 

#初始化你在 squid.conf 里配置的 cache 目录

 

# cd /usr/local/squid/var

 

# squid –z

 

 

 

各种启动方式如下:

 

#squid -k parse        #检查配置是否有错误,没有任何输出,证明配置基本是正确的!!!

 

 

 

#squid -zX           #可以加一个X参数,看看初始化具体的项目. 

 

 

 

#squid –D           #如果因为DNS无法启动squid,可以用下面的命令启动squid

 

 

# squid -NCd1       #如果运行正常,终端会显示“Ready to serve requests”

 

另一份squid.config

acl Safe_ports port 21      # ftp

acl Safe_ports port 443     # https

acl Safe_ports port 70      # gopher

acl Safe_ports port 210     # wais

acl Safe_ports port 1025-65535  # unregistered ports

acl Safe_ports port 280     # http-mgmt

acl Safe_ports port 488     # gss-http

acl Safe_ports port 591     # filemaker

acl Safe_ports port 777     # multiling http

acl CONNECT method CONNECT

 

auth_param basic program /usr/sbin/ncsa_auth /usr/local/squid/password

acl normal proxy_auth REQUIRED

http_access allow normal

 

# Deny requests to certain unsafe ports

http_access deny !Safe_ports

 

# Deny CONNECT to other than secure SSL ports

http_access deny CONNECT !SSL_ports

 

# And finally deny all other access to this proxy

http_access deny all

 

# Squid normally listens to port 3128

http_port 3128

 

# We recommend you to use at least the following line.

hierarchy_stoplist cgi-bin ?

 

# Uncomment and adjust the following to add a disk cache directory.

#cache_dir null /tmp

 

# Leave coredumps in the first cache dir

coredump_dir /usr/local/squid/var/cache

 

# Add any of your own refresh_pattern entries above these.

refresh_pattern ^ftp:       1440    20% 10080

refresh_pattern ^gopher:    1440    0%  1440

refresh_pattern -i (/cgi-bin/|\?) 0 0%  0

refresh_pattern .       0   20% 4320

 

4.Squid 测试

 

用下面的命令测试:

 

#  snmpwalk -v1 -c public 127.0.0.1:3401 .1.3.6.1.4.1.3495.1

 

 

 

如果能看到类似下面的信息,说明成功了。

 

SNMPv2-SMI::enterprises.3495.1.1.1.0 = INTEGER: 16360

 

SNMPv2-SMI::enterprises.3495.1.1.2.0 = INTEGER: 21626872

 

 

 

 

 

 

 

有因为默认snmp是使用161端口的,而squidsnmp开启的是3401端口,如果想直接通过snmp端口就可以取到squid的相关信息,可以在snmpd.conf中加入

 

 

 

view systemview included .1.3.6.1.4.1.3495.1

 

 

 

proxy -v 1 -c public localhost:3401 .1.3.6.1.4.1.3495.1

 

 

 

用下面的命令测试:

 

snmpwalk -v1 -c public 127.0.0.1 .1.3.6.1.4.1.3495.1

 

 

 

如果能看到类似下面的信息,说明成功了。

 

SNMPv2-SMI::enterprises.3495.1.1.1.0 = INTEGER: 16360

 

SNMPv2-SMI::enterprises.3495.1.1.2.0 = INTEGER: 21626872

 

 

 

5.Squid 常用命令

 

1,对你的squid.conf 排错,即验证 squid.conf 语法和配置。

 

 

 

#squid -k parse

 

 

 

如果squid.conf 有语法或配置错误,这里会返回提示你,如果没有返回,恭喜,可以尝试启动squid

 

 

 

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

 

 

 

#squid -N -d1

 

 

 

如果有到 ready to server reques,恭喜,启动成功。

 

然后 ctrl + c,停止squid,并以后台运行的方式启动它。

 

3,启动squid在后台运行。

 

 

 

#squid -s

 

 

 

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

 

4,停止 squid

 

 

 

#squid -k shutdown

 

 

 

这个不用解释吧。

 

5,重引导修改过的 squid.conf

 

 

 

#squid -k reconfigure

 

 

 

6.Squid 其他

 

1,把squid添加到系统启动项

 

编辑 /etc/rc.d/rc.local

 

添加如下行:  /usr/local/squid/sbin/squid -s

 

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

 

 

 

2,修改cache 缓存目录的权限。

 

#chown -R nobody:nobody /home/cache

 

我的cache缓存目录是 /home/cache, nobody执行用户和用户组是nobodynobody

 

3,修改squid 日志目录的权限

 

#chown -R squid:squid /usr/local/squid/var/logs

 

这一步并不是适合每一个使用squid的用户.意为让squid有权限在该目录进行写操作

 

例如生成  access.log    cache.log   store.log

 

 

 

4,查看你的日志文档。

 

#more /usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_MISS
该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是现重原始服务器获取并返回给访问用户。

 

 

 

7.Squid.conf 配置实例

 

8.Squid.conf 配置说明

 

lSquid配置(仅对必要选项配置并说明)

 

http_port 80

 

此选项用于Squid代理所侦听的端口,由于要实现Http加速代理,则侦听端口80

 

tcp_outgoing_address 255.255.255.255

 

此句法指定了远程服务器的IP地址,这里我们使用255.255.255.255来指定为所有地址

 

tcp_incoming_address

 

这里可以使用http_port语法进行绑定端口和IP地址。表示客户端的请求。可以不使用。

 

cache_mem 64 MB

 

由于Squid在读写磁盘,I/O通道,数据转贮等需要大量内存,我们可以把内存值稍微设置大一些,这样可以提供服务器性能。

 

 

 

cache_swap_low 95

 

这用做表示缓存内部对象的替换的衡量基线。当交换分区的磁盘利用率超越这个基线,那么缓存对象替换也就随之开始。这里是用百分率做衡量标准。

 

 

 

cache_swap_high 98

 

此标记用于缓存对象替换的最高程度,当交换分区磁盘利用率接近此设置,则表示对象的更新程度更为剧烈。这里由于我的缓存区设置比较大,因此设置为98%

 

 

 

下面几个配置标记采用系统默认配置。

 

{ maximum_object_size 4096 KB

 

{ 超过此尺寸的对象将不缓存。

 

{ minimum_object_size 0 KB

 

{ 小于此尺寸的对象将不缓存。

 

{ maximum_object_size_in_memory 8 KB

 

{ 内存中能缓存的最大对象尺寸。

 

{ ipcache_size 1024

 

{ 指定IP缓存大小。

 

{ ipcache_low 90

 

{ 缓存IP地址的最低基线。

 

{ ipcache_high 95

 

{ 缓存IP地址的最高极限。

 

{ fqdncache_size 1024

 

{ 缓存DNS全域名解析的尺寸。

 

 

 

cache_replacement_policy lru

 

此标记用于当缓存新对象时,使用缓存策略来清除缓存中特定对象。这里使用lru表示:它只替换长时间没有被访问过的对象。其他策略请参看配置文档介绍。

 

 

 

memory_replacement_policy lru

 

此用法同上,区别在于替换内存对象。

 

 

 

cache_dir ufs /cache 4000 16 256

 

设置缓存根目录为/cache,类型为ufs,缓存区大小为4G,可以有16个二级子目录,每有二级目录有256个三级子目录。

 

 

 

cache_access_log /var/log/squid/access.log

 

cache_log /var/log/squid/cache.log

 

cache_store_log /var/log/squid/store.log

 

cache_swap_log /var/log/squid/swap.log

 

上面几项是缓存日志记录的路径和文件名。

 

 

 

log_ip_on_direct on

 

记录客户端主机的IP地址。

 

 

 

log_fqdn on

 

记录全DNS域名解析。

 

 

 

mime_table /usr/local/squid/etc/mime.conf

 

Squid所用mime的文件路径

 

 

 

pid_filename /usr/local/squid/logs/squid.pid

 

Squid进程ID的文件。

 

 

 

ftp_user Squid@ynst.net.cn

 

这里可以使用匿名登陆FTP服务器。

 

 

 

ftp_list_width 32

 

FTP文件列表长度,超过长度则截断文件名。

 

ftp_passive on

 

允许主动连接FTP服务器。

 

 

 

dns_nameservers 202.98.187.1

 

指定代理的域名解析服务器。

 

 

 

authenticate_program  /usr/local/squid/bin/ncsa_auth

 

/usr/local/squid/etc/passwd

 

代理认证程序,这里在/usr/local/squid/etc使用htpasswd产生一个密码文件,具体方法如下:

 

#htpasswd –cdb passwd auth_usr1 pass1

 

#htpasswd –db passwd auth_usr2 pass2

 

#htpasswd –db passwd auth_usr3 pass3

 

创建passwd文件,并添加auth_usr1auth_usr2auth_usr3三个认证用户。

 

 

 

authenticate_children 5

 

所需要要产生的认证进程数。

 

 

 

authenticate_ttl 3600

 

此标记设置认证保持时间。

 

 

 

authenticate_ip_ttl 1800

 

此标记设置认证绑定IP地址的时间长度。

 

 

 

authenticate_ip_ttl_is_strict on

 

此标记可在authenticate_ttl时间内,拒绝其他非认证IP地址访问。

 

 

 

request_header_max_size 10 KB

 

request_body_max_size 1 MB

 

设置了Http请求的包头和数据大小。

 

 

 

request_body_max_size 0

 

这里,请求所返回的数据大小为0,意义为没有任何限制。

 

 

 

connect_timeout 180 seconds

 

read_timeout 15 minutes

 

request_timeout 20 seconds

 

上面几项是代理服务几个超时设置,这里使用配置文件默认值。

 

 

 

下面是访问控制列表一些配置,这里对访问的IP地址,域名,访问类型极其访问代理的权限做的限制:

 

acl acldomain dstdomain .ynst.net.cn

 

acl acceleratedport port 80

 

acl acceleratedhost dst 202.98.187.17/255.255.255.255

 

acl aclprotocol proto HTTP FTP

 

acl aclmethod method GET POST

 

 

 

acl aclauth proxy_auth required 

 

(注:这里使用required表示任何passwd文件中存在的合法用户才授予访问权限。)

 

 

 

acl aclsnmp snmp_community secrect

 

MRTG可以使用snmp协议检测此代理服务运行状态。

 

 

 

acl aclconn maxconn 20

 

可并行连接的最大数量。

 

 

 

启用定义的访问控制列表

 

http_access allow manager localhost

 

http_access deny manager

 

http_access allow aclauth

 

http_access allow acceleratedport acceleratedhost

 

http_access deny all

 

 

 

下面为缓存管理设置

 

cache_mgr admin@ynst.net.cn

 

设置缓存管理者的接受邮件地址。

 

 

 

cache_effective_user squidusr

 

cache_effective_group squidgrp

 

设置执行Squid的用户和用户组。

 

{注:设置用户和用户组及其权限修改方法如下:

 

#groupadd squidgrp

 

#useradd –g squidgrp –d /home/squidusr squidusr

 

修改log日志权限属性,使squidusr有写权限。

 

#chown squidusr /var/log/squid

 

#chgrp&

 

 

 

9.Squid命中率分析

 

/usr/local/squid/bin/squidclient -p 80 mgr:info
/usr/local/squid/bin/squidclient -p 80 mgr:5min
可以看到详细的性能情况,其中PORT是你的proxy的端口,5min可以是60min

 

取得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.xxx.com/xxx.php
*
更多的请查看:squidclient-h 或者 squidclient -p 80 mgr:

 

查命中率:
/usr/local/squid/bin/squidclient -h 111.222.111.111 -p80 mgr:info

 

/usr/local/squid/bin/squidclient -h具体的IP -p80 mgr:info

 

(我们一般都会把squid配置成有缓存目录的模式,也就是有配置cache_dir目录,当squid应用运行了一段时间以后,cache_dir对应的swap.state文件就会变得越来越大,里面的无效接口数据越来越多,这可能在一定程度上影响squid的响应时间,此时我们可以使用rotate命令来使squid清理swap.state里面的无效数据,减少swap.state的大小。具体命令格式:
/path/to/squid/sbin/squid -k rotate -f /path/to/squid/conf_file
但是在3.0.7以前的版本都发现一些问题,rotate完以后启动DNSSERVER的时候会提示不能分配内存,从而导致DNSSERVER的辅助进程不能启动,此时一般情况下需要重启squid应用。)

 

10.Squid 排错

 

 检查缓存目录中的cache.log文件可以判断squid工作是否正常。此文件包含squid运行时产生的输出信息和错误信息。

 

安装sarg

 

# mkdir /usr/local/sarg
# tar zxvf sarg-2.2.5.tar.gz
# cd sarg-2.2.5
# ./configure --prefix=/usr/local/sarg --enable-mandir=/usr/local/sarg/man --enable-bindir=/usr/local/sarg/bin
# make
# make install
# vi /usr/local/sarg/sarg.conf
language english             //
指定网页报告文件的语言类型,不支持中文网页。
access_log /usr/local/squid/var/logs/access.log //
指定squid日志文件绝对路径。
title "squid user access reports"         //
指定网页标题
output_dir /usr/local/apache/htdocs/sarg          //
指定网页报告文件输出路径
overwrite_report no          //
是否覆盖报告,当那个日期的报告已经存在时是否覆盖掉
mail_utility mail
topsites_num 100
exclude_codes /usr/local/sarg/exclude_codes
max_elapsed 28800000
charset UTF-8
exclude_hosts /usr/local/sarg/norecords //
指定不计入排序的站点列表文件名
resolve_ip no
user_ip no                          //
使用用户名显示
# vi /usr/local/sarg/norecords      //
添加不计排序站点
google.com
microsoft.com
baidu.com
# /usr/local/sarg/bin/sarg     //
生成报表
# vi/root/sarg-hour.sh //
每小时生成
#!/bin/bash
#hour
Date=$(date -d "1 hours ago " +"%y%m%d%H")
/usr/local/squid/sbin/squid -k rotate
sleep 10
Squiddir='/usr/local/squid/var/logs'
Access='access.log.*'
/bin/mv ${Squiddir}${Access} ${Squiddir}access${Date}.log
/usr/local/sarg/bin/sarg -o /usr/local/apache/htdocs/hours -l ${Squiddir}access${Date}.log
#chmod a+x /root/sarg-hour.sh
# crontab -e
0 8,9,10,11,12,13,14,15,16,17,18,19,20 * * * /root/sarg-hour.sh
# vi /root/sarg-day.sh
#!/bin/bash
#day
Squiddir='/usr/local/squid/var/logs'
Date=$(date -d "1 day ago " +"%y%m%d")
/bin/sort -m -t " " -k 1 -o $Squiddir${Date}log_all.log ${Squiddir}access${Date}*.log
/bin/rm access${Date}*.log -rf
/usr/local/sarg/bin/sarg -o /usr/local/apache/htdocs/days -l ${Squiddir}${Date}log_all.log
# chmod a+x /root/sarg-day.sh
# crontab -e
20 1 * * * /root/sarg-day.sh
# vi /root/sarg-week.sh
#!/bin/bash
#week
Date=$(date -d "1 week ago " +"%y%m%d")
YESTERDAY=$(date –date "1 week ago" +%d/%m/%Y)
/bin/sort -m -t " " -k 1 -o $Squiddir${Date}weeklog_all.log ${Squiddir}*log_all.log
/usr/local/sarg/bin/sarg -o /usr/local/apache/week -l ${Squiddir}${Date}weeklog_all.log
# chmod a+x /root/sarg-week.sh
# crontab -e
40 * * * 5 /root/sarg-week.sh
或者        //每十分钟生成一次日志
# crontab -e
*/10 * * * *
 /usr/local/sarg/bin/sarg > /dev/null 2>&1

 

 

分享到:
评论

相关推荐

    Linux搭建Squid透明代理及squid+icap环境

    Squid是一款广泛应用的开源代理缓存服务器,它可以帮助提高网络访问速度,减轻服务器负载。透明代理则是指用户在使用网络时,无感知地通过代理服务器进行访问。而Squid与ICAP(Internet Content Adaptation Protocol...

    linux squid 管理界面

    Linux Squid管理界面是针对Squid网络代理服务器的一个重要工具,它提供了用户友好的图形化界面,使得管理员能够更加方便地管理和配置Squid。Squid是一款广泛使用的开源缓存代理软件,用于提高网络访问速度并降低...

    squid缓存服务器的研究

    ### Squid 缓存服务器研究 #### 一、Squid 概述 Squid 是一款广泛应用于互联网数据缓存的开源软件。其主要功能是接收来自客户端的请求,并根据请求内容,从远程服务器获取数据后缓存至本地。当下次再次请求相同的...

    squid文件上传大小配置

    ### Squid 文件上传大小配置详解 #### 一、引言 在互联网应用中,代理服务器是一种常见的技术手段,用于提供安全、高效的网络访问服务。Squid 作为一款开源的高性能代理缓存软件,在众多场景中得到了广泛的应用。...

    squid-3.5.28.tar.gz

    《Squid代理服务器详解与应用》 Squid是一个广泛应用的开源代理服务器,其最新版本为3.5.28。在互联网访问控制、内容缓存和性能优化等方面,Squid扮演着至关重要的角色。本文将深入探讨Squid的基本概念、功能特性...

    squid代理中出现的错误

    ### Squid 代理服务器启动时常见错误解析及解决方法 #### 概述 Squid 是一款广泛使用的开源代理缓存服务器,它能够为局域网内的用户提供更快的Web访问速度,并通过缓存机制减轻对外部网络的带宽压力。在安装与配置...

    squid和nginx配置正向代理访问API接口.rar

    在这个场景中,"squid"和"nginx"都是流行的开源软件,它们可以被配置为正向代理来转发请求到API接口。下面我们将深入探讨这两个工具以及如何配置它们。 首先,让我们了解一下 Squid。Squid 是一个高性能的代理缓存...

    linux下squid的安装,配置,卸载及SNMP的安装配置

    在Linux环境中,Squid是一个常用的代理服务器和缓存服务器,它可以提高网络访问速度并实现内容过滤。在本文中,我们将详细介绍如何在Linux系统中安装、配置、卸载Squid,以及安装和配置SNMP(简单网络管理协议)。 ...

    squid-2.7.STABLE9

    ** squid-2.7.STABLE9 ** Squid是一个广泛使用的开源代理缓存服务器,专为提高网络性能和提供安全访问控制而设计。在2.7.STABLE9这个版本中,它代表了Squid在用C语言编写的最后一个稳定分支。这个版本因其稳定性、...

    squid日志格式-http错误代码-注解

    5. Squid request status (TCP_MISS etc):表示Squid服务器对请求的处理状态,包括TCP_MISS、TCP_HIT、TCP_REFRESH_HIT等。 6. HTTP status code:表示HTTP的状态代码,例如200 OK、404 Not Found等。 7. Reply ...

    squid-3.1.23-24.el6.x86_64 linux安装及依赖包

    5. **访问控制**:Squid的访问控制通过`/etc/squid/squid.conf`中的ACL(Access Control List)实现,可以根据IP地址、子网或时间范围限制用户的访问权限。 6. **缓存策略**:Squid支持多种缓存策略,如基于内容...

    Squid Windows版架设二级代理服务器

    ### Squid Windows版架设二级代理服务器 #### 概述 在本文中,我们将详细介绍如何在Windows环境下配置Squid作为二级代理服务器的过程。通过设置Squid为二级代理,可以实现更高效的网络访问和资源管理。下面将从...

    squid、varnish、ngx_cache的性能测试对比报告

    本报告对比了Squid、Varnish和Ngx_cache三款缓存软件的性能。首先,从测试环境来看,本次测试所使用的Squid、Ngx_cache(也就是Varnish)、Nginx_cache均运行在具有单硬盘资源的服务器上,并为缓存分配了180G的存储...

    Squid中文权威指南

    本人在工作中维护着数台Squid服务器,多次参阅Duane Wessels(他也是Squid的创始人)的这本书,原书名是"Squid: The Definitive Guide",由O'Reilly出版。我在业余时间把它翻译成中文,希望对中文Squid用户有所帮助...

    Linux下Squid安装步骤

    10.Squid 排错如果遇到问题,查看Squid的日志文件(默认为`/var/log/squid/access.log`和`/var/log/squid/cache.log`)以获取错误信息。使用`grep`或`less`命令筛选相关错误。 总结,安装和配置Squid需要对Linux...

    Squid中文权威指南 最好的Squid指南

    《Squid中文权威指南》是一本专注于Squid缓存代理服务器的详细教程,旨在帮助读者深入理解和高效使用这款开源软件。Squid作为一款广泛应用于Linux环境的网络代理服务器,其主要功能是提高网络访问速度,节省带宽,...

    squid-3.5.25.tar.gz

    Squid是一个广泛使用的开源代理服务器,主要用于网络缓存,以提高网络访问速度并减轻服务器负载。Squid 3.5.25是该软件的一个稳定版本,它包含了多种功能改进和错误修复,适用于企业级环境。在这个版本中,我们主要...

    squid编译安装及配置详解.pdf

    4. 编译安装 Squid:使用 configure 命令来配置 Squid,例如 `# ./configure -prefix=/usr/local/squid`,然后使用 make 命令编译 Squid,例如 `# make`,最后使用 make install 命令安装 Squid,例如 `# make ...

    squid代码分析!

    对Squid源代码进行深入分析有助于我们理解其内部工作原理,优化性能,或者根据特定需求进行定制化开发。 在Squid源代码中,我们可以发现以下几个关键知识点: 1. **网络通信机制**:Squid采用事件驱动模型,如I/O...

Global site tag (gtag.js) - Google Analytics