squid安裝:css
1.下載squid源碼安裝包html
wget http://www.squid-cache.org/Versions/v3/3.2/squid-3.2.3.tar.gzlinux
解壓縮centos
tar zxvf squid-3.2.3.tar.gzbash
進入解壓後的目錄服務器
cd squid-3.2.3(目錄位置依據我的設定而不一樣)dom
安裝ide
yum install gcc*<?xml:namespace prefix="o" ns="urn:schemas-microsoft-com:office:office">測試
?xml:namespace>yum groupinstall 'Development Libraries'ui
yum groupinstall 'Development Tools'
./configure --prefix=/usr/local/squid --disable-carp --with-aufs-threads=32 --with-pthreads --enable-storeio='ufs,aufs,null' --enable-removal-policies='heap,lru' --enable-linux-tproxy --disable-wccp --enable-kill-parent-hack --disable-snmp --disable-poll --disable-select --enable-auth=basic --with-aio --enable-large-cache-files --enable-default-err-language=Simplify_Chinese --enable-epoll --enable-cache-digests --with-maxfd=65535
[root@localhost squid-3.2.3]#make && make install
若是你用的是centos系統的最小化安裝,可能沒有安裝c語言編譯器,須要手動安裝,如安裝過程當中出現如下錯誤:
-bash: make: command not found
這是由於沒有安裝編譯器,用如下命令安裝:
yum install gcc* ;yum -y install gcc-*
安裝後,再次make就能夠了。至此,squid就安裝到服務器上了,接下來配置反向代理。
Squid反向代理配置:
這是本人本身曾經使用的配置
http_port 80 vhost vport
cache_mem 256 MB
maximum_object_size_in_memory 2048 KB
memory_replacement_policy lru
cache_dir ufs /var/spool/squid 20480 16 256
access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
max_open_disk_fds 0
minimum_object_size 0 KB
maximum_object_size 32768 KB
#logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h""%{User-Agent}>h" %Ss:%Sh
cache_peer 125.39.127.22 parent 80 0 no-query no-digest originserver name=88181
#須要反向代理的源WEB服務器,能夠添加多個 ,若只有一個源WEB服務器,可不設name
cache_peer 118.144.78.54 parent 80 0 no-query no-digest originserver name=jj
#須要反向代理的源WEB服務器,能夠添加多個
cache_peer_domain 88181 88181.com
#若只有一個源WEB服務器,可不設cache_peer_domain
cache_peer_domain jj www.linuxidc.com
http_access allow all
cache_effective_user nobody
cache_effective_group nobody
cache_mgr zifu.199s0@163.com
#refresh_pattern ^ftp: 60 20% 10080
#refresh_pattern ^gopher: 60 0% 1440
#refresh_pattern ^gopher: 60 0% 1440
#refresh_pattern . 0 20% 1440
refresh_pattern -i \.css$ 360 50% 2880
refresh_pattern -i \.js$ 1440 50% 2880
refresh_pattern -i \.html$ 720 50% 1440
refresh_pattern -i \.jpg$ 1440 90% 2880
refresh_pattern -i \.gif$ 1440 90% 2880
refresh_pattern -i \.swf$ 1440 90% 2880
refresh_pattern -i \.jpg$ 1440 50% 2880
refresh_pattern -i \.png$ 1440 50% 2880
refresh_pattern -i \.bmp$ 1440 50% 2880
refresh_pattern -i \.doc$ 1440 50% 2880
refresh_pattern -i \.ppt$ 1440 50% 2880
refresh_pattern -i \.xls$ 1440 50% 2880
refresh_pattern -i \.pdf$ 1440 50% 2880
refresh_pattern -i \.rar$ 1440 50% 2880
refresh_pattern -i \.zip$ 1440 50% 2880
refresh_pattern -i \.txt$ 1440 50% 2880
************************************************************************************************************
chmod 777 /usr/local/squid/var
chmod 777 /usr/local/squid/var/logs
/usr/local/squid/sbin/squid -z
/usr/local/squid/sbin/squid -k parse 測試配置文件
/usr/local/squid/sbin/squid -k reconfigure 從新配置文件
/usr/local/squid/sbin/squid -k shutdown 關閉squid
/usr/local/squid/sbin/squid -s 開啓squid 後臺
/usr/local/squid/sbin/squid -N -d1 前臺開啓squid
/usr/local/squid/sbin/squid -k interrupt 關閉squid(更高優先級,直接關閉squid)
/usr/local/squid/sbin/squid -k kill 關閉squid(最高優先級,直接殺死squid進程)
設置squid自啓動
echo "/usr/local/squid/sbin/squid -s " >>/etc/rc.local
設置每週二凌晨兩點25分自動滾動日誌
echo "25 2 * * 2 root /usr/local/squid/sbin/squid -k rotate " >>/etc/crontab
設置squid自啓動
/etc/rc.local
/usr/local/squid/sbin/squid
至此,配置完成。