web缓存Squid代理服务

缓存网页对象,减少重复请求

 

squid代理服务器,主要提供缓存加速,应用层过滤控制的功能

代理工作机制

1.代替客户机向网站请求数据,从而可以隐藏用户的真实ip地址

2.将获得的网页数据(静态web元素)保存到缓存中并发送给客户机,以便下次请求相同的数据时快速相应。

代理服务器概念作用

代理服务器是一个位于客户端和原始资源服务器之间的服务器,为了从原始服务器获取内容,客户端向代理服务器发送一个请求并指定目标原始服务武器,然后代理服务器像原始服务器专交请求并将获得的内容返回给客户端

缓存代理对于heb至关重要,尤其对于大型高负载Meb站点。缓存可作为性能优化的一个重要手段,可以极大减轻后端服务器的负载。通常对于静态资源,即较少经常更新的资源,如图片,Css或15等进行缓存,从而在每次刷新浏览器的时候,不用重新请求,而是从缓存里面说取,这样就可以减轻服务器的压力。

其主要作用有:

资源获取: 代替客户端实现从原始服务器的资源获取:加速访问:代理服务器可能离原始服务器更近,从而起到一定的加速作用;

缓存作用:代理服务器保存从原始服务器所获取的资源,从而实现客户端快速的获取;

隐藏真实地址:代理服务器代替客户端去获取原始服务器资源,从而隐藏客户端真实信息。

主要作用:资源获取:

加速访问

缓存作用:

隐藏真是地址:代理服务器替带客户端去获取原始服务器资源,从而隐藏客户端真是信息

常用缓存代理

cdn:内容分发网络,在边缘网络架设一及多级架网络。

squid:nginx:varnish:

squid代理类型

传统代理:

透明代理:客户机不需要指定代理服务器请求的地址和端口,而是通过默认路由器防火墙策略将访问重定向给代理服务器

反向代理:如果squid反向代理服务器中缓存了该请求的资源,则将该请求的资源返回给客户端,否则反向代理服务器将向后台的web服务武器

squid安装

 

 

usradd -M -s /sbin/nologin squid

chown -R squid:squid squid/

vim /etc/squid.conf

http_access allow all

cache_effective_user squid

cache_effective_group squid

squid -k parse检查语法是否正确

配置服务

vim /etc/init.d/squid

创建脚本

chmod +x /etc/init.d/squid

 #检查配置文件语法是否正确
squid -k parse
 ​
 #启动 Squid,第一次启动 Squid 服务时,会自动初始化缓存目录
squid -z        #-z 选项用来初始化缓存目录
squid           #启动 squid 服务
 ​
netstat -anpt | grep "squid"    #查看是否启动成功

服务用squid脚本

传统代理服务器

vim /etc/squid.conf

http_access allow all
http_access deny all
http_port 3128
cache_effective_user squid
cache_effective_group squid
--63行--插入
cache_mem 64 MB                #指定缓存功能所使用的内存空间大小,便于保持访问较频繁的WEB对象,容量最好为4的倍数,单位为MB,一般设为物理内存的1/3
cache_swap_high 95    

maximum_object_size 512000kb 设置squid磁盘缓存最大文件,以kb为单位,超过的文件不保存到硬盘

,而是直接转发给用户

maximum_object_size_inmemory 512kb

设置squid内存缓存最大文件,超过的文件不保存到内存


service squid restart
systemctl restart squid

windows设置

 windows火狐浏览器设置

 

日志文件

自定义

vim/usr/local/squid/var/logs/access.log

miss没有命中到缓存

tcp_mem_hit表示命中缓存,本地没有缓存

TCP_refresh_unmodified内容刷新没有更改过

火狐浏览器代理配置请求 3128

 

 

构建透明模式代理服务器 

squid服务器做网关服务器时

squid服务器:双网卡,内网ens33:ens33:192.168.232.80.10 外网12.0.0.10

网关ip路由转发功能SNAT地址转换

squid

vim /etc/sysctl.conf

sysctl -p

net.ipv4.ip_forward = 1

清除原有规则

iptables -F && iptables -t nat -F

iptables -nL

添加规则

 监听入站网卡和端口

设置为特殊模式

 acl访问控制

步骤:(1)使用 acl 配置项定义需要控制的条件;

(2)通过 http access 配置项对已定义的列表做"允许"或"拒绝”访问的控制

 

控制类型

src 源地址

dst 目的地址

port 目的端口

dstdomain 目的域名

maxconn 最大连接数

time 时段

url_regex url路径

urlpath_regex url路径正则

列如:acl myhosts src 12.0.0.0/24

http_access denny myhosts

修改配置文件

 

squid反向代理

如果 Squid 反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端:否则反向代理服务器将向后台的 meb服务器请求资源,然后将请求的应答返回给客户端,同时也将该应答缓存在本地,供下一个请求者使用。

cache_peer 指向服务器父节点

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值