Squid使用方法详解

1.Squid 简介

Squid 是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户象要下载一个主页时,它向Squid 发出一个申请,要Squid 替它下载,然后Squid连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户,使用户觉得速度相当快。目前,Squid 可以代理HTTP, FTP, GOPHER, SSL 和 WAIS 协议,暂不能代理POP, NNTP等协议。不过,已经有人开始修改Squid,相信不久的将来,Squid能够代理这些协议。

Squid能够缓存任何数据吗?不是的。象缓存信用卡帐号、可以远方执行的scripts、经常变换的主页等是不合适的也是不安全的。Squid可以自动的进行处理,你也可以根据自己的需要设置Squid,使之过滤掉你不想要的东西。

Squid可以工作在很多的操作系统中,如AIX, Digital Unix, FreeBSD, HP-UX, Irix, Linux, NetBSD, Nextstep, SCO, Solaris,OS/2等,也有不少人在其他操作系统中重新编译过Squid。

Squid对硬件的要求是内存一定要大,不应小于128M,硬盘转速越快越好,最好使用服务器专用SCSI硬盘,处理器要求不高,400MH以上既可。

2. Squid的编译和运行

其实现在的Linux发行套件中基本都有已经编译好的Squid,你所作的就是安装它既可。如果你手头没有现成的编译好的Squid或想使用最新的版本,去ftp:squid.nlanr.net下载一份,自己编译。

Squid的编译是非常简单的,因为它基本上是自己配置自己。最容易出现的问题是你的系统上没有合适的编译器,这可以通过安装相应的编译器解决。如果出现其他问题,你可以问一下有经验的用户或到相应的邮件列表寻找帮助。

编译Squid之前,最好建一个专门运行Squid的用户和组。我就在自己的服务器上建了一个名为squid的用户和组,用户目录设为/usr/local/squid。然后su为用户squid并从squid.nlanr.net下载Squid的源文件到目录 /usr/local/squid/src中,用如下命令进行解压:

%tar xzf squid-2.0.RELEASE-src.tar.gz

%cd /usr/local/squid/src/ squid-*.*.RELEASE /

%./configure

%make

%make install

第一个命令在目录/usr/local/squid/src中产生一个新的子目录/squid-*.*.RELEASE/。命令./configure会自动查询你的系统配置情况以及你系统中使用的头文件。不加参数的./configure会把Squid安装在目录/usr/local/squid中,如果你想使用其他目录,用如下命令./configure --prefix=/some/other/directory,这会把Squid安装在目录/some/other/directory中。make命令编译Squid,make install命令安装Squid。

不出意外的话,目录/usr/local/squid中会出现如下目录:

/bin

/cache

/etc

/logs/

/src (自己创建的)

目录/bin中含有Squid可执行程序,包括Squid本身,ftpget等。

目录/cache包含Squid缓存的数据,其中包含象/00/ /01/ /02/ 以及/03/这样的目录,这些目录中还有子目录,因为目录多了比在一个目录成千上万的文件中寻找一个文件更容易,速度更快。

目录/etc中包含Squid的唯一的配置文件squid.conf。

目录/logs中包含Squid的日志。

3. squid.conf文件的配置

在安装Squid后,在目录/usr/local/squid /etc中会自动产生一个样本squid.conf文件,文件中对每一个选项都有详细的说明,用户可以通过修改该文件以满足不同的需要。

总的来说,有如下几个重要选项:

?http_port:设定Squid****的端口,你最好设一个比较好记的端口号,以便在进行客户机配置时容易记住。我的机器上端口号设的是8080。缺省为3128。

?cache_mem:设定Squid占用的物理内存,根据我的经验,cache_mem的大小不应超过你的服务器物理内存的三分之一,否则将会影响机器的总体性能。

?maximum_object_size:设定Squid可以接收的最大对象的大小。Squid缺省值为4M,我自己入认为太大,你可以根据自己的需要进行设定。

?cache_dir:设定缓存的位置、大小。一般看起来形式如下“cache_dir /usr/local/squid/cache 100 16 256”。 /usr/local/squid/cache代表缓存的位置;100代表缓存最大为100M;16和256代表一级和二级目录数。

?cache_effective_user:设定使用缓存的有效用户。缺省为用户nobody,如果你的系统中没有用户nobody,最好建一个或以非root用户运行Squid。

下面我给出一个最简单的squid.conf文件:

#squid.conf - a very basic config file for squid

#Turn logging to its lowest level

debug_options ALL,1

#defines a group (or Access Control List) that includes all IP addresses

acl all src 0.0.0.0/0.0.0.0

#define RAM used

cache_mem 32M

#defines the cache size

cache_dir /usr/local/squid/cache 100 16 256

#allow all sites to use connect to us via HTTP

http_access allow all

#allow all sites to use us as a sibling

icp_access allow all

#test the following sites to check that we are connected

dns_testnames internic.net usc.edu cs.colorado.edu mit.edu yale.edu

#run as the squid user

cache_effective_user squid squid

这个配置文件允许所有人使用Squid,创建了100M缓存,使用32M内存,在缺省位置"/usr/local/squid/cache"缓存数据,所有缓存数据以组squid和用户squid身份保存,端口为3128。虽然这个配置很不安全,但是它已经能使用了。

4. 运行Squid

首先以root身份登陆。运行如下命令:

%/usr/local/squid/bin/squid ?z

该命令会产生Squid所有的缓存目录。

如果你想前台执行Squid,接着执行命令:

%/usr/local/squid/bin/squid -NCd1

该命令正式启动Squid。如果一切正常,你会看到一行输出

Ready to serve requests.

如果想后台运行Squid,把它做为一个精灵进程,执行命令:

%/usr/local/squid/bin/squid

观察Squid是否运行使用命令:

% squid -k check

输出会告诉你Squid的当前状态。

好了,文章先写到这里,其实这里介绍的都是最基本的东西,Squid有好多高级的功能,如做WEB服务器的高速缓存,做二级代理服务器,做为防火墙,以及怎样设定过滤规则等,这里就不详述了,如果有机会再奉献给大家。

(0)

相关推荐

  • 微信刮刮卡怎么做?最快速的微信刮刮卡制作方法详解

    微信刮刮卡是一把营销的利剑,但是如何用最少的资金做一个微信刮刮卡呢,很多朋友都表示自己不知道微信刮刮卡怎么做,今天微信人生的小编在这里就和大家分享一下最简单,最快速的微信刮刮卡制作方法。喜欢的朋友一起 ...

  • 禁用p2p下载工具的几种方法详解[图文]

    小编和同事聊天,经常听到同事抱怨在家上网网速不给力的情况。对于网速不给力的现象导致的原因有很多,其中就包括用户自己在使用一些迅雷或者电驴p2p下载工具,这样就会影响网速了。那么今天小编就给大家介绍禁用 ...

  • 腾讯地图测距怎么用 腾讯地图测距功能使用方法详解

    腾讯地图测距怎么用,使用方法详解。当要去一个地方,用手机地图查看路径的时候,最好是查看一下自己所在地到目的地的距离,而腾讯地图就带有这个功能——测距,下面,一起来看腾讯地图测距怎么用吧。 1)腾讯地图 ...

  • 硒鼓的日常保养方法详解

    硒鼓的日常保养方法详解

  • DIY台式电脑棘手的跳线连接安装方法详解

    DIY台式电脑,很多的网友已经掌握了组装方法,主要是把主机的各个硬件连接起来,关于硬件的连接,其实很简单,在这里我就不重复了,重点是装机中最后的跳线连接,也是装机中比较复杂和棘手的问题,下面把跳线的连 ...

  • 途牛如何下订单?手机途牛旅行下单方法详解

    途牛如何下订单?途牛下订单方法详解。途牛是一款提供旅游度假产品在线展示和预定服务的旅游软件,具有线路查询、线路搜索、线路收藏、行程介绍、客户点评、订单查询、会员管理等功能。那么如何下订单呢?下面跟随小 ...

  • 凯立德导航离线地图怎么下载?凯立德导航地图下载方法详解

    凯立德导航地图下载方法详解。很多朋友抱怨手机在线使用导航实在是太耗流量了,其实我们在出发前下载离线地图包就可避免这种情况。那么凯立德导航地图如何下载呢?别急,小编马上为你献上凯立德导航地图下载方法。 ...

  • 手机版傲游云浏览器设置主页方法详解

    傲游云浏览器设置主页方法详解。每当打开浏览器时,你的第一个页面是什么?是导航还是浏览器默认页面。你是否对某个网站情有独钟。喜欢高效的你,可以尝试把自己最喜欢,最常去的网站设置成主页,即方便又省时。下面 ...

  • win10系统怎么卸载 win10卸载方法详解

    win10系统怎么卸载?微软发布win10系统升级后,相信很多人都已经下载使用了吧!如果不想使用了怎么办?下面,绿茶小乐哥分享win10卸载方法详解,想了解的一起来看看吧! 微软希望我们每一个人都升级 ...