squid之------常用配置及選項


Squid常用命令
1.初始化在squid.conf里配置的cache目錄
squid -z
2.對squid.conf排錯,即驗證squid.conf的語法和配置
squid -k parse
3.定期清理swap.state內無效數據
squid -k rotate -f /etc/squid/squid.conf
當squid應用運行了一段時間之后,cache_dir對應的swap.state文件就會變得越來越大,里面的無效接口數據越來越多,這可能影響squid的響應時間,因此需要使用squid清理swap.state里面的無效數據,減少swap.state的大小。
查看Squid日志文檔
1. more /var/log/squid/access.log | grep TCP_MEM_HIT
該指令可以看到在squid運行過程中,有那些 文件被squid緩存到 內存 ,並返回給訪問用戶。
2. more /var/log/squid/access.log | grep TCP_HIT
該指令可以看到在squid運行過程中,有那些 文件被squid緩存到 cache目錄 ,並返回給訪問用戶。
3. more /var/log/squid/access.log | grep TCP_MISS
該指令可以看到在squid運行過程中,有那些文件 沒有被squid緩存 ,而是從原始服務器獲取並返回給訪問用戶。
Squid命中率分析
1.取得squid內存使用情況:
squidclient -p 3128 mgr:mem
2.取得squid運行狀態信息:
squidclient -p 3128 mgr:info
3.取得squid已經緩存的列表:
squidclient -p 3128 mgr:bjects. use it carefully,it may crash
4.取得squid的磁盤使用情況:
squidclient -p 3128 mgr:diskd
5.強制更新某個url:
squidclient -p 3128 -m PURGE http://www.xxx.com/xxx.php
6.查命中率:
squidclient -h IP(具體偵聽IP) -p 80(具體偵聽端口) mgr:info
Squid常用配置選項
/etc/squid/squid.conf
http_port 3128 (還可以只監聽一個IP http_port 192.168.0.1:3128)
cache_mem 64MB #緩存占內存大小
maximum_object_size 4096KB #最大緩存塊
reply_body_max_size 1024000 allow all #限定下載文件大小
access_log /var/log/squid/access.log #訪問日志存放的地方
visible_hostname proxy.test.xom #可見的主機名
cache_dir ufs /var/spool/squid 100 16 256
#ufs:緩存數據的存儲格式
#/var/spool/squid 緩存目錄
#100:緩存目錄占磁盤空間大小(M)
#16:緩存空間一級子目錄個數
#256:緩存空間二級子目錄個數
cache_mgr webmaster@test.com #定義管理員郵箱
http_access deny all #訪問控制
squid中的訪問控制
使用訪問控制特性,可以控制在訪問時 根據特定的時間間隔進行緩存、訪問特定站點或一組站點等等。
squid訪問控制有兩個要素: ACL元素和訪問列表 。訪問列表可以允許或拒絕某些用戶對此服務的訪問。
ACL元素類型
  • src:源地址(即客戶機IP地址)
  • dst:目標地址(即服務器IP地址)
  • srcdomain:源名稱(即客戶機名稱)
  • dstdomain:目標名稱(即服務器名稱)
  • time:一天中的時刻和一周內的一天
  • url_regex:URL規則表達式匹配
  • urlpath_regex:URL-path規則表達式匹配,略去協議和主機名
  • proxy_auth:通過外部程序進行用戶驗證
  • maxconn:單一IP的最大連接數
ACL格式
acl acl_element_name type_of_acl_element values_to_acl
注:
  1. acl_element_name 可以是任一個在ACL中定義的名稱
  2. 任何兩個ACL元素不能用相同的名字
  3. 每個ACL由列表值組成。當進行匹配檢測的時候,多個值由邏輯或運算連接;換言之,即任一ACL元素的值被匹配,則這個ACL元素即被匹配。
  4. 並不是所有ACL元素都能使用訪問列表中的全部類型
  5. 不同的ACL元素寫在不同行中,squid將把他們組合在一個列表中
訪問條目
我們可以使用許多不同的訪問條目。下面是我們常用的幾個:
  • http_access:允許HTTP訪問
  • no_cache:定義對緩存請求的響應。
訪問列表的規則由一些類似 'allow'或‘deny’ 的關鍵字構成,用以允許或拒絕向特定或一組ACL元素提供服務。
  1. 一個訪問列表可以由多條規則組成
  2. 如果沒有任何規則與訪問請求匹配,默認動作將與列表中最后一條規則對應
  3. 一個訪問條目中所有元素將用邏輯與運算連接
  4. http_access Action 聲明1 AND 聲明2 AND 聲明 OR.
  5. http_access Action 聲明3
  6. 多個http_accesss聲明間用或運算連接,但每個訪問條目的元素間用與運算連接。
  7. 列表中的規則總是遵循由上而下的順序
  8. 這些規則按照他們的排列順序進行匹配檢測,一旦檢測到匹配的規則,匹配就立即結束。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM