--prefix=/usr/local/squid
這里設(shè)置安裝目錄。安裝目錄是所有可執(zhí)行文件,日志,和配置文件的默認(rèn)目錄。
--localstatedir=/var/log/squid
該選項(xiàng)允許你改變 var 目錄的安裝位置。默認(rèn)是$prefix/Var。
--sysconfdir=/etc
該選項(xiàng)允許你改變 etc 目錄的位置。
--enable-dlmalloc
在一些系統(tǒng)上,內(nèi)建的內(nèi)存分配機(jī)制(malloc)在使用 squid 時(shí)表現(xiàn)不盡人意。使用該選項(xiàng)將 squid 源代碼包中的 dlmalloc 包編譯和鏈接進(jìn)來(lái)。假如你的系統(tǒng)中已安裝 dlmalloc,你能使用=LIB 參數(shù)指定庫(kù)的路徑。
--enable-gnuregex
在訪問(wèn)控制列表和其他配置指令里,squid 使用正則表達(dá)式作為匹配機(jī)制。GNU 的正則表達(dá)式庫(kù)包含在 squid 的源代碼包里;它可以在沒(méi)有內(nèi)建正則表達(dá)式的操作系統(tǒng)中使用。./configure 腳本偵察你系統(tǒng)中的正則表達(dá)式庫(kù),假如必要,它可以激活使用GNU正則表達(dá)式。如果因?yàn)槟承├碛?,你想?qiáng)制使用 GNU 正則表達(dá)式,你可以將這個(gè)選項(xiàng)加到./configure 命令后。
--enable-async-io[=N_THREADS]
異步 I/O 是 squid 技術(shù)之一,用以提升存儲(chǔ)性能。aufs 模塊使用大量的線程來(lái)執(zhí)行磁盤(pán)I/O 操作。該代碼僅僅工作在 linux 和 solaris 系統(tǒng)中。=N_THREADS 參數(shù)改變 squid 使用的線程數(shù)量。請(qǐng)注意--enable-async-io 是打開(kāi)其他三個(gè)./configure 選項(xiàng)的快捷方式,它等同于:
--with-aufs-threads=N_THREADS
--with-pthreads
--enable-storeio=ufs,aufs
--with-pthreads
該選項(xiàng)導(dǎo)致編譯過(guò)程去鏈接到你系統(tǒng)中的 P 線程庫(kù)。aufs 存儲(chǔ)模塊是 squid 中唯一需要使 用線程的部分。通常來(lái)說(shuō),如果你使用--enable-saync-io 選項(xiàng),那么不必再單獨(dú)指定該選項(xiàng),因?yàn)樗蛔詣?dòng)激活了。
--enable-storeio=LIST
Squid 支持大量的不同存儲(chǔ)模塊。通過(guò)使用該選項(xiàng),你告訴 squid 編譯時(shí)使用哪個(gè)模塊。在 squid-2.5中,支持 ufs,aufs,diskd,和 null 模塊。 LIST 是一個(gè)以逗號(hào)分隔的模塊列表,例如:
% ./configure --enable-storeio=afus,diskd,ufs
ufs 模塊是默認(rèn)的,看起來(lái)問(wèn)題最少。不幸的是,它性能有限。
--with-aufs-threads=N_THREADS
指定 aufs 存儲(chǔ)機(jī)制使用的線程數(shù)量。squid 默認(rèn)根據(jù)緩存目錄的數(shù)量,自動(dòng)計(jì)算需要使用多少線程。
--enable-removal-policies=LIST
排除策略是 squid 需要騰出空間給新的 cache 目標(biāo)時(shí),用以排除舊目標(biāo)的機(jī)制。squid-2.5 支持3個(gè)排除策略:最少近期使用(LRU),貪婪對(duì)偶大小(GDS),最少經(jīng)常使用(LFU)。
為了使用 GDS 或 LFU 策略,你需要指定:
% ./configure --enable-removal-policies=heap
然后你在 squid 的配置文件里選擇使用 GDS 或 LFU。假如你想重新使用LRU,那么指定:
% ./configure --enable-removal-policies=heap,lru
--enable-cachemgr -hostname[=hostname]
cachemgr 是一個(gè) CGI 程序,你能使用它來(lái)管理查詢 squid。默認(rèn) cachemgr 的 hostname值是空的,但你能使用該選項(xiàng)來(lái)指定一個(gè)默認(rèn)值。例如:
% ./configure --enable-cachemgr-hostname=mycache.myorg.net
--enable-err-languages="lang1 lang2 ..."
squid 支持定制錯(cuò)誤消息,錯(cuò)誤消息可以用多種語(yǔ)言報(bào)告。該選項(xiàng)指定復(fù)制到安裝目錄 ($prefix/share/errors)的語(yǔ)言。假如你不使用該選項(xiàng),所有可用語(yǔ)言被安裝。想知道何種語(yǔ)言 可用,請(qǐng)見(jiàn)源代碼包里 errors 目錄下的目錄列表。如下顯示如何激活多種語(yǔ)言:
% ./configure --enable-err-languages="Dutch German French" ...
--enable-default-err-language=lang
該選項(xiàng)設(shè)置 error_directory 指令的默認(rèn)值。例如,假如你想使用荷蘭語(yǔ),你能這樣指定: % ./configure --enable-default-err-language=Dutch 你也能在 squid.conf 里指定 error_directory 指令,假如你忽略該選項(xiàng),英語(yǔ)是默認(rèn)錯(cuò)誤語(yǔ)言。
--disable-ident-lookups
ident 是一個(gè)簡(jiǎn)單的協(xié)議,允許服務(wù)器利用客戶端的特殊 TCP 連接來(lái)發(fā)現(xiàn)用戶名。假如你使用該選項(xiàng),編譯器將把執(zhí)行這些查詢的代碼排除出去。即使你在編譯時(shí)保留了這些代碼,除非你在 squid.conf 文件里指定,squid 不會(huì)執(zhí)行 ident 查詢。
--enable-poll
unix 提供兩個(gè)相似的函數(shù)用以在 I/O 事件里掃描開(kāi)放文件描述符:select()和poll()../configure 腳本通常能非常好的計(jì)算出何時(shí)使用 poll()來(lái)代替 select().假如你想強(qiáng)制使用 poll(),那么指定該選項(xiàng)。
--disable-poll
類似的,如果不使用 poll(),那么指定該選項(xiàng)。
--enable-x-accelerator-vary
該高級(jí)功能可能在squid被配置成加速器時(shí)使用。它建議squid在響應(yīng)請(qǐng)求時(shí),從后臺(tái)原始服務(wù)器中尋找X-Accelerator-Vary頭。
--with-maxfd=65535
相當(dāng)于ulimit -n 65535
CDN加速Squid 2.6參數(shù)設(shè)置
./configure --prefix=/usr/local/squid'
'--enable-async-io'
'--enable-storeio=aufs,null'
'--enable-removal-policies'
'--enable-cachemgr-hostname=CNC-JMS-27.fastcdn.com'
'--enable-default-err-language=Simplify_Chinese'
'--enable-err-languages=Simplify_Chinese'
'--enable-epoll'
'--disable-ident-lookups'
'--disable-poll'
'--disable-select'
'--disable-kqueue'
'--enable-x-accelerator-vary'
'--enable-large-cache-files'
'--enable-follow-x-forwarded-for'
'--with-maxfd=65536'
聯(lián)系客服