服务器架设篇 - RedHat 6.1

设置代理服务器(Proxy Server)

代理服务器设置

最近更新时间: 2001/11/09

本文数据主要针对 RedHat 6.1 的系统进行说明,要注意的是,RedHat 6.1 与 Red Hat Enterprise Linux (RHEL) 是完全不同的东西!RedHat 6.1 在 1999 年推出,在 2000 年底就不再维护了!这部份网站更新到 2002 年,也没有再维护过! 因此,建议您前往本站查找最新版本的 Linux distribution 文章来阅读,比较不会浪费时间。那为何还需要编辑 RedHat 6.1 的数据呢? 鸟哥只想要做个自己曾经撰写过的文档内容保存而已啰! ^_^!最新文章请前往鸟站首页查阅啰!

什么是代理服务器

从字面上的意义来看,代理服务器(proxy)就是帮用户端(就是你啦)去向目的地的机器要求用户需求的主机,因为他是你的代理人嘛!所以,当你设置代理服务器之后,你的所有相关的要求均会经过代理服务器去搜索!例如,当你设置你在 windows 的 IE 下的代理服务器是 seednet 在南部的代理服务器(ksproxy.seed.net.tw、port: 8080),则当你要去奇摩的网站时,奇摩的网页数据将会先经过 ksproxy.seed.net.tw 这一部主机的访问之后,再发送到你的 windows 中!有点像下面这个流程:
你的 Windows ---> ksproxy.seed.net.tw ---> www.kimo.com.tw
你的 Windows <--- ksproxy.seed.net.tw <-----------」
这里请注意,通常 proxy 都会将用户端要求的数据作一个备份在硬盘中!所以,当你要求过一次 www.kimo.com.tw 的数据后,这份网页数据就会暂存在 ksproxy.seed.net.tw 这架 proxy 中,而暂存的时间长短是依主机的设置而定的!

多层次的代理服务器
好了,那如果你设置了一个代理服务器在你的 Linux 中,但是这个代理服务器的设置中,又会设置你的代理服务器的上层代理服务器??此话何解?也就是说,当你的代理服务器被要求去作某些工作的时候,他将会再通过向其他地方的代理服务器要求,来达到你的需求,例如你的代理服务器的上层代理服务器是 ksproxy 这一部,则用户端对你的 Linux 代理服务器的要求就会变成这样:

你的 Windows --> 你的 proxy --> ksproxy.seed.net.tw ---> www.kimo.com.tw
你的 Windows <-- 你的 proxy <-- ksproxy.seed.net.tw <-----------」
也就是说,从用户端对你的要求到 www.kimo.com.tw 的东西,必须经过两个 proxy 主机的访问之后,才能到你的 windows 当中!

更详细的说明你可以看一下这里

代理服务器的优缺点

那代理服务器有何优点呢?当然啰,没有优点干嘛架设代理服务器?呵呵!底下说说他的优点吧:
  • 快速的访问动作:他最大的优点就是可以提供用户端较为快速的浏览或者是数据的访问!咦!由刚刚的说明来看,你直接向 www.kimo.com.tw 的要求需要经过一个主机的访问动作,甚至是多个主机的访问,那理应更慢才对,为何会造成较快的情况呢?如果你仔细的看一下上面的流程,你会发现,当第一个人要求过 www.kimo.com.tw 的数据后, ksproxy.seed.net.tw 就已经保存有这份数据了,所以以后向这部 proxy 要求相同数据的用户端,将会直接取用这份数据,而不用到 www.kimo.com.tw 去了!故,通常我们设置代理服务器的时候,一定要找距离我们的机器最近的那一部,否则就没有达到代理服务器的功用了!通常快速的访问动作最明显的大概是连去国外的网站了!这里要强烈的建议,如果你需要连上国外的网页,请一定使用代理服务器,因为不但可以节省带宽,并且速度上会快上很多很多(例如美国 EPA 网站!!)。
  • 降低网络的负荷:由于我们是项代理服务器要求数据,如果代理服务器内刚好有你要的数据,将会直接传给你,则你的要求将不会到真实的那一个网页去(除非你在 IE 内按下『刷新』这个按钮),而如果没有你要求的数据,那他也会去捉一份你要的数据给你,并存下来,以后如果有与你相同需要的用户,那他就可以直接发送给用户,如此当可降低网络的负荷!另外,有些企业部门会将不同目标的代理服务器分开来,达到分流的目的!例如:proxy1主要为找寻台湾的网站,proxy2 为找国外的网站,则你的网域终将可以达到很好的分流效果,网络会比较快速喔!
  • 提供防火墙内部的电脑连上 Internet:这个是一般企业比较常用的情况!由于企业内部害怕被黑客侵入,通常会设立一些比较严密的防火墙,然而如此一来公司内部的电脑可能面临无法连上 Internet 的窘境,那使用 proxy 让你的内部电脑可以通过这一架主机的代理服务而取得 Internet 上的信息,就是一个很好的方法啦!
  • 多层次的管道:代理服务器可以提供多重的管道设置,例如,当你需要国内的数据时,代理服务器将直接去捉取,而需要国外的数据时,才连到上一层的代理服务器!如此将可达到你的需求(而不用常常在你的 IE 等浏览器上更改所需的代理服务器)
但是有利就有弊,代理服务器有何缺点呢?由于代理服务器的设置中,通常会设置其上层代理服务器,如果你没有设置好,则如果你要读取近端的网页数据,可能会造成绕了一圈才又回到你的服务器的情况!因此设置上需要比较小心。

哪里有代理服务器

如果你需要设置代理服务器的话,底下有一些在网络上公开的代理服务器可供参考喔! 同时这里要补充的是,在一些私人单位的 Proxy (如 SeedNet 与 Hinet)设置中,他们仅提供给使用自家 ISP 的用户,因此不同的 ISP 之 Proxy 设置是会不同的!

下载安装 squid

安装各种套件的方法主要可以分成 rpm 升级以及用来源档(binary文件)升级,以 rpm 方法升级是比较简单的方法,而且以 rpm -q 的指令可以来查找目前你的系统中的套件版本!不过由于 rpm 出来的时间会比较慢,并且不同 Linux 版本之间可能会有版本兼容性的问题,所以你也可以直接以 binary 升级(就是使用 *.tar.gz 的文件升级的方法)。要注意的是,你只要以其中一种方法升级就好了,不用重复升级喔!
下载:
目前使用最多的代理服务器程序,大概是 squid 这一套程序了!在 Redhat 6.1 中就已经有这套软件,只是版本比较旧(2.2.stable-4),通常我会喜欢把这一套软件升级后才予以设置!升级的方式有两种,一个是使用 rpm 升级,另一个则是直接使用 source code 升级,以下提供的是 squid-2.4.STABLE1-5.src.rpm 的升级方式。不过,由于 squid 在安装的时候需要其他的附属套件的安装,所以还需要一些套件,这里提供了使用 rpm 升级的所有需要的套件,你可以下载回去用用看!另外,如果你需要使用到原代码来安装的话,这个网站你也可以去看看!

rpm 安装方法
我是以 RPM 程序来安装的,安装的附属套件要先安装才行,过程如下:
 

[root@tsai /root]# tar -zxvf squid-2.4.STABLE1-5.tar.gz
先解压缩吧,这时会有一些文件会产生出来,然后请接着运行下面的动作!

[root@tsai /root]# /bin/rpm --rebuild pam-0.74-22.src.rpm
[root@tsai /root]# /bin/rpm -ivh /usr/src/redhat/RPMS/i386/pam-0.74-22.i386.rpm
[root@tsai /root]# /bin/rpm -ivh /usr/src/redhat/RPMS/i386/pam-devel-0.74-22.i386.rpm
[root@tsai /root]# /bin/rpm --rebuild sgml-common-0.5-7.src.rpm
[root@tsai /root]# /bin/rpm --rebuild sgml-tools-1.0.9-12.src.rpm
[root@tsai /root]# /bin/rpm -ivh /usr/src/redhat/RPMS/noarch/sqml-common-0.5-7.noarch.rpm
[root@tsai /root]# /bin/rpm -Uvh --nodeps /usr/src/redhat/RPMS/i386/sqml-tools-1.0.9-12.i386.rpm
[root@tsai /root]# /bin/rpm --rebuild openjade-1.3-13.src.rpm
[root@tsai /root]# /bin/rpm -ivh /usr/src/redhat/RPMS/i386/openjade-1.3-13.i386.rpm
[root@tsai /root]# /bin/rpm --rebuild bash-2.05-8.src.rpm
[root@tsai /root]# /bin/rpm -Uvh /usr/src/redhat/RPMS/i386/bash-2.05-8.i386.rpm
[root@tsai /root]# /bin/rpm --rebuild squid.2.4.STABLE1-5.src.rpm
[root@tsai /root]# /bin/rpm -Uvh --nodeps /usr/src/redhat/RPMS/i386/squid.2.4.STABLE1-5.i386.rpm

请注意,由于有些套件有点小错误,所以需要强制安装,因此有些安装过程需要加上 --nodeps 这个参数才能安装!!至于 --rebuild 是重新编译的意思,若对于 rpm 不明了,请在往前看看以 rpm 升级的办法一文吧!

基本上,经过上面的安装之后,应该就可以把 squid 升级了,你可以察看一下:
 

[root@tsai /root]# rpm -q squid
squid-2.4.STABLE1-5
这样就安装好啰!
来源档升级:(update 2001/11/09)
那如果你想要以最新版的 squid 来升级的话呢,要如何是好?这里提供了目前(2001/09/xx)最新的 squid 版本 squid-2.4.STABLE2-src.tar.gz ,新版的功能是比较多的。
安装的方法很简单,只是你要先将 RedHat 6.1 原先的 squid 移除,然后将刚刚捉下去的文件。整个安装的方法,简单的来说,有下列几个步骤:
 
[root@tsai /root]# cp squid-2.4.STABLE2-src.tar.gz /usr/local
将文件拷贝到 Linux 缺省的本机安装套件的目录 /usr/local 中!

[root@tsai /root]# cd /usr/local
[root@tsai local]# tar -zxvf squid-2.4.STABLE2-src.tar.gz
这时会产生一个名为 squid-2.4.STABLE2 的目录!
在这个目录中有一个 INSTALL 的文件,你可以看一下里面的流程!

[root@tsai local]# cd squid-2.4.STABLE2
[root@tsai squid-2.4.STABL2]# ./configure --prefix=/usr/local/squid  \
--enable-icmp  --enable-async-io=40  \
--enable-err-language="Traditional_Chinese"  \
--enable-cache-digests
上面 --prefix 后面接的是 squid 即将安装的目的目录,
也就是说,你的这一版 squid 会安装在 /usr/local/squid 中!
另外, --enable-async-io=40 这一个咚咚最好加上去!
会增加很多的总体性能喔!(快得不得了!)
至于 --enable-err-language-"Traditional_Chinese" 是指将错误消息
以中文输出!

[root@tsai squid-2.4.STABL2]# make 
[root@tsai squid-2.4.STABL2]# make install
上面就是在编译及安装啦!

这样就安装完毕啰!

设置代理服务器

这里仅提供简单的代理服务器的设置,如果你需要更详细的设置的话,请到 squid 的网页去看看吧!

需要给予设置的文件

  • 基本上,需要给予设置的文件只有一个,即是 squid.conf 这个文件。要注意的是,如果你是以 rpm 安装的,则这个文件会放在 /etc/squid/ 中,如果你是以 binary 安装的,那这个文件就会放在 /usr/local/squid/conf 当中!
  • 另外,程序缺省的启动批量档, rpm 的是 /etc/rc.d/init.d/squid 这个文件,而 binary 则在 /usr/local/squid/bin/squid 这个文件;
  • 而程序缺省的暂存目录在 /var/spool/squid !
    以下我将以 rpm 的文件进行说明,当然啰, binary 的修改是一样的,只是文件放置的地点不一样罢了!
确定 squid 可以正常运行
    我们先简单修改一下 /etc/squid/squid.conf 这个文件,让他可以被启动,然后再继续往下修改!
     
  • 找到下面几行,将注解(#)拿掉:

  •  
    http_port 3128
    icp_port 3130
    cache_mem 8 MB
    cache_dir ufs /var/spool/squid 100 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
  • 找到下面这行,并改成下列情况:

  • http_access deny all  ==> http_access allow all
  • 上面那一行改好之后,保存并离开 vi ,然后运行:

  • /etc/rc.d/init.d/squid start
    或者是
    /usr/local/squid/bin/squid
    如此则 squid 应该可以正常运行了!接下来请到 IE 中,如果你是 IE 5.0 以后的版本,请到:
      『工具』->
      『Internet 选项』->
      『连接』->
      『局域网路设置』中,点击
      『使用 Proxy 服务器』
    并在网址列输入你的主机名称(或者是 IP 均可),然后按确定离开!然后在 IE 中按按看网页的设置有没有成功,如果可以读到网页的话,表示 squid 可以正常的被使用了!
    虽然 squid 可以被使用,但是要让你的 squid 实际发挥应有的能力时,你应该最少要设置一些基础的参数的!所以请继续往下看吧!
高端的 squid.conf 设置
在完成了上述的设置之后,你的 Proxy Server 就可以启动了,不过,如果你想要再进一步进行设置的话,例如刚刚提过的,你想要让 squid 的上层代理服务器具有选择性,以及想让 squid 的暂存空间更大,那你就必须要再设置了,以下提供几个不错的网页提供给你做为参考! 基本上,需要注意的地方主要可以分为底下几个:
  • http_port 3128

  • 这个东西是用来设置你的 Proxy 监听消息的 port ,目前 proxy 通用的 port 是 3128 ,但是你也可以自行设置一个大于 1024 的 port ,例如另一个常用的 port 是 8080 这一个。不过我并不建议你修改这个 port ,因为如果你修改了之后,很有可能会造成无法连接的情况,所以还是使用默认值 3128 吧!
  • cache_peer:(相当重要的!

  • 这个就是用来设置上层代理服务器的指令,刚刚有提过『代理服务器可以设置多个』,而且你可以将代理服务器分类,以我为例,因为我住台南,所以成大计中对我而言是一个很不错的服务器,则我如果要向上层代理服务器要求消息,可以指向成大计中(快很多喔!),亦即是 proxy.ncku.edu.tw 3128 这一个,请你依照你的所在地来设置你的代理服务器吧。
    • cache_peer proxy.ncku.edu.tw parent 3128 3130
      上面的说明是,使用 proxy.ncku.edu.tw 这个主机当作 主要的(parent,就是父母的意思)上层代理服务器,另外,如果你想要向对等的服务器要求东西,就可以将 parent 写成 slbling 啰!除此之外,这一个指令可以重复写入,也就是说,你可以同时设置多个上层代理服务器!不过这里要向大家报告一下,如果设太多上层服务器的话,由于数据会一层层的去要求,所以速度反而会变慢!基本上是建议大家只要设置两个到三个左右的上层代理服务器就好了。
      再者,3128是 squid 主要的 port ,而 3130 则是另外一个监听的 port ,也要写上去喔!
  • cache_peer_domain:(相当重要的!

  • 这个参数可以用来分别指定不同网域的代理服务器,以我为例,因为常上美国 EPA 的网站,而 proxy.ncku.edu.tw 对于这个网站的读取能力很强,另外,gate.ncku.edu.tw 这个 proxy 则对 ucar.edu 这个美国网域的读取能力较强,那我可以使这两个网域向不同的 proxy 索取数据:
    • cache_peer_domain proxy.ncku.edu.tw .epa.gov
    • cache_peer_domain gate.ncku.edu.tw .ucar.edu
      那你晓得了吗?只要你在这里分别指定不同的代理服务器,那你自己的这个代理服务器就自动的帮你完成你需要的数据源了!很重要吧!
  • cache_mem 8 MB

  • 这东西与你的内存有关,如果你的内存够大的话,这个 8 可以变大一些,例如你的内存有 256 MB 时,你可以设成 256*1/4 ==> 64 MB,如果你只有 64MB,而且主机还有其他用途,那使用缺省的 8 MB 就好了。
  • cache_dir ufs /var/spool/squid 100 16 256:(update 2001/11/09)

  • 这个指令就是限制暂存区大小的地方啦,上面的说明是:暂存区目录为 /var/spool/squid ,而暂存空间大小为 100M , 在这个暂存目录下有 16 个目录,而每个目录中又有 256 个目录(你可以实际进入 /var/spool/squid 当中去看看)。如果你要改变暂存盘目录及这个目录的大小时,可以在这里修改!不建议修改 16, 256 这两个数值。另外,通常,如果是我们一般小型的区网(不超过10个人),那设置个  500 应该够了,如果你的硬盘够大,设置成 1000 以上更好。修改过这个指令后,要再重新启动 squid 之前,请先使用下面的指令来使你的目录可以进行访问的动作,否则你的 squid 是不会工作的!例如你将上面的参数修改成:
      cache_dir ufs /var/spool/squid 1000 16 256
    然后再进行下面的指令:
      rm -rf /var/spool/squid
      mkdir /var/spool/squid
      chown squid:squid /var/spool/squid
      /usr/sbin/squid -z
    这样你的squid暂存目录就可以使用啰!
    另外,如果你刚刚在安装的时候有将 --enable-async-io=40 这一个加进来的话,将可以增加 aufs 这一个磁盘的用途!这个东西可真是好呀!可以将你的硬盘发挥到最极限的速度喔!虽然在 squid.conf 文件中有提及,这个 type 可能会有 bug 存在,不过,据鸟哥的使用结果,发现,没啥大问题!好用的很!所以,你可以将上面的咚咚改成下面的样子:
      cache_dir aufs /var/spool/squid 1000 16 256
  • acl 与 http_access

  • 这两个文件是相互辉映的,例如:如果你只要将这个 Proxy 开放给内部网络 192.168.1.XXX 用的话,你可以增加这三行:
    • acl insidenet src 192.168.1.0/255.255.255.0 (insidenet 只是一个代号,你可以任意设置,但须与底下的相同名称。而 src 代表后面接的是 IP 的意思,而后面的 IP(255.255.255.0) 表示 192.168.1.0~192.168.1.255 均为此设置中!)
    • http_access deny all(关于 proxy 全部的服务均取消)
    • http_access allow insidenet localhost(仅开放 Proxy 给 insidenet 及 localhost 两个网域使用)
  • cache_mgr root

  • 当 squid 有问题的时候,要联系谁?通常我都将 root 改成我自己的 ID ,如此才能在其他的机器上收到信!
    • cache_mgr vbird@tsai.adsldns.org
  • acl 与 always_direct:(很重要

  • 这个就是是否需要直接去读取你要的网页,而不要通过上层代理服务器的指令(重要)。例如:我们不需要在台湾地区的学术网络还通过上层代理服务器的话,可以写入这两行:
    • acl Taiwan-net dstdomain .edu.tw(就是设置网址,其中 dstdomain 后面接的就是网址,网址的型态亦可仅写成 .tw 即可)
    • always_direct allow Taiwan-net(这个网址的网页,直接由我们这个 Proxy 去捉,而不通过上层 Proxy)
  • acl 与 never_direct

  • 这个就是不要直接去取得数据的设置处,例如我们常去的美国环保署网站,我们希望关于这个网页的数据一定由上层 Proxy 去捉取,则可以这样设置:
    • acl usepa dstdomain .epa.gov
    • never_direct allow usepa
    上面这个 always_direct 与 never_direct 的设置可以是多重的,你可以多写入几个对应的网址,去定义你的上层 Proxy 的工作路径!
  • prefer_direct off

  • 上面这个选项一定要设置为 off ,不然的话你的 squid 将会尝试直接到网站去捉数据,而不会通过上层 proxy 喔!
  • 重新启动:

  • 设置完成之后,最重要的就是重新启动了,你可以这样来启动:
    • /etc/rc.d/init.d/squid restart
    • /usr/local/squid/bin/squid -k reconfigure
  • 特别需要注意的地方:基本上这样的 squid 设置应该能满足你的需求了,如果你的上层代理服务器设置妥当的话,那你应该会感受到代理服务器带给你的网络连接速度上的快乐喔!不过有些地方还是需要注意一下的:
    1. 目前作为代理服务器的主机,大都由于带宽的问题,所以会限制连接上来的用户,就是上面的 http_access 这个参数的设置值,因此,你应该针对你所在的网域去调查你的上层代理服务器,若可能的话,可以提出申请,请管理员帮你打开使用,否则对 squid 是不会有帮助的!
    2. 在 acl 后面接了代号及 dstdomain 之后,如果你要接一个网域的话,请在前面加 . 例如美国环保署的网站(不论是 www 或其他)就要写成 .epa.gov 而不是 epa.gov(先前我搞错了!向大家对不起!),这样一来,不论 www.epa.gov 或 adb.epa.gov 才会经过你的上层 proxy 喔!
    3. 请依照你实际的需求来设置 acl 与 never_direct 与 always_direct ,例如你人在台湾,那几乎所有 com.tw 的网站都不用通过 proxy 也可以捉得很好!反而通过 proxy 会变慢哩,同样的,如果是学术网络的话,就直接把 .edu.tw 加入到 always_direct 当中吧!
    4. 也需要注意一下 cache_peer_domain 用来分流的方法喔!
设置的几个范例
这里有几个设置的范例可以参考一下:

Windows 内的设置

以下使用 IE 作为说明,如果是 Netcape 的话,基本上的设置是相同的:
  • 打开 IE ,然后在『工具』内选择『Internet 选项』:
  • 在打开的窗口内选择『连接』并点击下方的『局域网路设置』:
  • 在新的框框中,填入你所需要的 Proxy 的网址或者是 IP 均可,而 port 则需视你的代理服务器而定,以我为例,我都是使用 192.168.1.2 作为我的主机(NAT、Proxy、Web 都是同一台机器),而 port 也仅是设置为通用的 3128 ,所以如下方设置即可,当然,如果你是在南部的 seednet 用户,或者可以填入 ksproxy.seed.net.tw,port 则填入 8080 即可。
  • 另外,你也可以在 IE 中直接设置你要直接去捉取的网页名称,点击上个图的 『高端』 那一项,在出现的框框的最底下,可以填入你不想通过 Proxy 捉取的网站网址!
如此一来则设置好了 Proxy Server 啰!

squid 的注意事项(增进 proxy 性能的方法)(update 2001/11/09)

使用代理服务器后,浏览国外的网页应该是可以变快的!但是,你要小心几件事:
  1. 若 squid 内设置的使用空间满了,则 squid 将不会运作!
  2. 若 squid 的纪录档太大了,则工作效率会变慢!
如上所述,由于 squid 可能会让你的硬盘空间饱和(尤其我们都是使用旧电脑,硬盘容量本来就不是很足够),如果每隔几个月就要去清理硬盘一次,那可能会造成人力的浪费,这个时候,使用例行性的工作就是个好方法啦!
  • 删除记录档的方法

  • 基本上,记录档不需要保存太久的时间,你可以在 /etc/cron.daily 这个目录中增加一个文件(文件名随便取都可以),假设文件名为 system_do.sh,则在这个文件中,你可以增加这一行:
     
    /usr/sbin/squid -k rotate  <==/usr/sbin/squid 这个路径要指向你的 squid 运行档
    这个方法在使你的纪录档可以被转成备份文件!而且每天都更新备份,不过,你必须将 system_do.sh 这个文件更改成可运行档,例如: chmod 700 system_do.sh

    然后在你的 /etc/cron.weekly 目录中,也增加一个文件,里头也增加一行:
     

    rm -rf /var/log/squid/*.gz 
    同样的做成可运行档,如此,则每个礼拜系统可将你的备份文件杀掉啰!
  • 删除记录目录的方法

  • 同样的,你可以在每个月清理一次你的暂存目录,你可以将你的 /etc/cron.monthly 里面增加一个文件,增加下面这几行:
     
      echo Now, restart Proxy Service
      /etc/rc.d/init.d/./squid stop
      echo removing directory "/var/spool/squid"
      rm -rf /var/spool/squid  <==与你的暂存目录设置有关
      echo recreated directory "/var/spool/squid"
      mkdir /var/spool/squid   <==与你的暂存目录设置有关
      echo chang owner to squid
      chown squid:squid /var/spool/squid
      echo recreated swap directory, using /usr/sbin/squid
      /usr/sbin/squid -z
      echo starting proxy server!
      /etc/rc.d/init.d/squid start
    则每个月系统会自动的将 squid 暂存于 /var/spool/squid 的数据全部杀掉,再重新建造一个新的目录,另外,将目录改变成 squid 所有(避免不能读写的情况!)之后,启动这个暂存目录的格式化(squid -z),最后再重新启动!如此则不需害怕暂存目录会被吃光光了!
  • 增加 proxy 性能的方法
    1. 关于上层代理服务器:用 cache_peer 设置上层代理服务器的数目不要太多,只要 2-5 个之间就好了,而且上层代理服务器一定要找距离你最近,并且具有较大带宽的主机,如果是在台南,那 proxy.ncku.edu.tw 就是不错的主机;
    2. 关于暂存目录的设置:以 cache_dir ufs 设置的目录,最好是单独割出来的约 1-2 GB 的硬盘槽,以我为例,我将另外一台主机的 30GB 的硬盘割两槽给 proxy 用,而每一槽只有 2GB ,分别命名为 proxy1 与 proxy2 ,则可以写成

    3. cache_dir ufs /proxy1 2000 16 256
      cache_dir ufs /proxy2 2000 16 256
      由于分成两槽来访问,所以整体效率上会比较好,但这是针对一般比较大型的代理服务器的设置了,我们这个小主机就不用如此设置(但是效率真的有差哩!)。
    4. 善用 acl, always_direct, never_direct:就如同上面提到的,因为你的目的不同,所以会使用到不同的 proxy 作为你的上层代理服务器,如果你发现你的上层代理服务器无法针对你常上的网站来求取数据时,就将那个网站加入你的 always_direct 吧!另外,也可以使用 cache_peer_domain 来处理喔!
    5. 在 ./configure 的时候增加 --enable-async-io=40 这一个指令:基本上,增加这个指令之后,将可以使您的磁盘多一个 type ,亦即是 aufs ,这个 type 的速度较快!
修改历史:
2002/01/01以来统计人数
其他链接
环境工程模式篇
鸟园讨论区
鸟哥旧站

今日 人数统计
昨日 人数统计
本月 人数统计
上月 人数统计