标签:localhost 配置文件 possible squid manager
Squid是代理软件,可缓存减低IO,可做正向代理(企业使用,降低宽带使用率)、反向代理(网站静态项缓存如图片、流媒体等,用于网站架构)。
一、Squid正向代理
##查看版本号
squid -v
#配置squid的配置文件,先清空,后加入
echo “” > /etc/squid/squid.conf
vim /etc/squid/squid.conf
加入代码:
http_port 3128acl manager proto cache_objectacl localhost src 127.0.0.1/32 ::1acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1acl localnet src 10.0.0.0/8 # RFC1918 possible internal networkacl localnet src 172.16.0.0/12 # RFC1918 possible internal networkacl localnet src 192.168.0.0/16 # RFC1918 possible internal networkacl SSL_ports port 443acl Safe_ports port 80 8080 # httpacl Safe_ports port 21 # ftpacl Safe_ports port 443 # httpsacl CONNECT method CONNECThttp_access allow manager localhosthttp_access deny managerhttp_access deny !Safe_portshttp_access deny CONNECT !SSL_portshttp_access allow localnet #与上面定义的localnet对应http_access allow localhost #与上面定义的localhost对应http_access allow allcache_dir aufs /data/cache 1024 16 256cache_mem 128 MBhierarchy_stoplist cgi-bin ?coredump_dir /var/spool/squidrefresh_pattern ^ftp: 1440 20% 10080 ##配置缓存时间refresh_pattern ^gopher: 1440 0% 1440 ##配置缓存时间refresh_pattern -i (/cgi-bin/|\?) 0 0% 0refresh_pattern \.(jpg|png|gif|mp3|xml) 1440 50% 2880 ignore-reloadrefresh_pattern . 0 20% 4320
###“http_port 3128” 指的是,squid服务启动后将要监听的端口,“cache_dir aufs” 这个用来指定本地磁盘上的缓存目录,并制定缓存大小,以M为单位,aufs为缓存格式;“cache_mem”它用来规定缓存占用内存的大小;
##检查配置文件是否错误,只有在启动后才能使用
squid -kcheck
##初始化缓存目录
mkdir /data/cache
hown -R squid:squid /data/cache/
squid -z
##启动squid
/etc/init.d/squid start
##测试正向代理是否启动成功
curl -xlocalhost:3128 http://www.baidu.com/ -I
##重新加载配置文档
squid -krec
##设置白名单,只允许白名单通过,其他不通过,在squid.conf中找到:
##acl CONNECT method CONNECT
##在其下面添加四行:
acl http proto HTTP
acl while_list dstdomain .yichuangshe.net.net
http_access allow http while_list
http_access deny http !while_list
##设置黑名单,跟白名单设置方法一样:
acl http proto HTTP
acl black_list dstdomain .123.com
http_access allow http !black_list
http_access deny http black_list
##重新加载配置文档,测试
squid -kche ##测试配置文档是否有问题
squid -krec ##重新加载配置文档
二、Squid反向代理
##修改配置文件,把端口修改为80
http_port 80 accel vhost vport ##这是必需添加的
##然后再增加你要代理的后端真实服务器信息:
cache_peer 14.17.32.211 parent 80 0 originserver name=a
cache_peer 180.97.33.107 parent 80 0 originserver name=b
cache_peer_domain a www.qq.com
cache_peer_domain b www.baidu.com
##其中cache_peer为配置后端的服务器ip以及端口,name后边为要配置的域名,这里和后面的cache_peer_domain相对应。实际的应用中,ip大多为内外ip,而域名也许会有多个,如果是squid要代理一台web上的所有域名,那么就只写一句即可:
cache_peer 120.24.98.198 parent 80 0 originserver
##反向代理主要用于缓存静态项,因为静态项目尤其是图片、流媒体等比较耗费带宽,在中国,联通网访问电信的资源本例就慢,如果再去访问大流量的图片、流媒体那更会慢了,所以如果在联通网配置一个squid反向代理,让联通客户端直接访问这个联通squid,而这些静态项已经被缓存在了squid上,这样就大大加快了访问速度。CDN, 其实它的设计原理就是这样的思路。
本文出自 “linux小记” 博客,请务必保留此出处http://lstulinux.blog.51cto.com/3938932/1701476
标签:localhost 配置文件 possible squid manager
原文地址:http://lstulinux.blog.51cto.com/3938932/1701476