首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
Squid代理服务器 、 Varnish服务器
时间:
2017-12-06 22:03:33
阅读:
131
评论:
0
收藏:
0
[点我收藏+]
标签:
squid 、 varnish
代理服务器:
什么是代理服务器?
简单举个例子,假设百度的Web服务器在北京,当我们访问百度的服务器时,我们的请求并不是发送到北京的Web服务器,而是通过代理服务器来实现。
比如我们在上海,服务器在北京,那我们去访问百度,距离长,访问速度慢。所以我们就可以在上海搭建一个代理服务器。
应用场景:
Web访问加速
IP伪装,×××
#########################################################################################################
squid软件:
反向:加速网页服务
正向:×××
准备三台虚拟机:
Web1:用来模拟总服务器
eth1网卡:192.168.2.100
Proxy:用来模拟代理服务器
eth0网卡:192.168.4.5
eth1网卡:192.168.2.5
Client:用来模拟客户端
eth0网卡:192.168.4.100
防火墙设置为trusted
selinux设置为permissive
###################################################################################################
Web1虚拟机:
#yum -y install httpd //装包
#systemctl restart httpd //启动服务
#systemctl enbale httpd //设置随机自启
#echo "192.168.2.100" > /var/www/html/index.html //书写页面
Proxy虚拟机:
#yum -y install squid //装包
#vim /etc/squid/squid.conf //修改配置文件
http_access allow all //允许所有客户端访问
http_port 80 vhost //将端口改为80端口
visible_hostname www.sina.com //www.sina.com 可随意更改。相当于代理服务器的网站名称,目的就是让访问本服务器的客户端认为它就是sina的主服务器。
cache_peer 192.168.2.100 parent 80 0 originserver //指定后端(提供页面的)服务器。
cache_dir ufs /var/spool/squid 100 16 256 //缓存页面的存放位置及大小。100 指的是大小为100M 有16个主目录,每个主目录下有256个子目录。
#yum -y restart squid //启动服务
#yum -y enable squid //随机自启
#curl (-i) http://192.168.4.5 //验证,-i可以查看详细信息
192.168.2.100
#cd /var/log/squid //squid日志的存放位置
access.log cache.log squid.out //access.log服务日志
#ls /var/spool/squid/ //squid的缓存页面的存放位置
注意:因为squid占用的为80端口,所以在使用squid时,确保80端口未被占用。
#########################################################################################
varnish软件:
配置varnish缓存服务器来加速web访问
yum源中没有varnish软件,需要我们进行源码包编译安装:
Proxy虚拟机:
#yum -y install gcc readline-devel pcre-devel //安装软件依赖包
# useradd -s /sbin/nologin varnish //创建普通用户,防止攻击。
# tar -xzf varnish-3.0.6.tar.gz //解包
# cd varnish-3.0.6
# ./configure --prefix=/usr/local/varnish //指定安装路径
# make && make install //编译安装
#cp redhat/varnish.initrc /etc/init.d/varnish //复制启动脚本
# cp redhat/varnish.sysconfig /etc/sysconfig/varnish //复制配置文件
# ln -s /usr/local/varnish/sbin/varnishd /usr/sbin/ //创建软链接,
前端配置(面向客户端):
#vim /etc/sysconfig/varnish //修改配置文件
VARNISH_LISTEN_PORT=80 //监听端口为80
VARNISH_STORAGE_SIZE=64M //设置存储大小为64M
VARNISH_STORGE="malloc,${VARNISH_STORGE_SIZE}" //设置存储位置,malloc为内存
后端配置(面向服务端)
# vim /etc/varnish/default.vcl //修改配置文件
backend default {
.host = "192.168.2.100"; //指定后端服务器(提供页面的服务器)
.port = "80";
}
#/etc/init.d/varnish start //启动服务
#curl http://192.168.4.5 //验证
#varnishlog //varnish日志,可以看出代理一直在件口后台服务器,确保服务器能正常提供页面。
#varnishncsa //访问日至。
更新缓存数据:
客户在访问时,都是访问的代理服务器,代理服务器会提供缓存页面,那当我们的后台页面发生改变时,我们的客户端怎样才能达到更新。
1.等,大约需要2-3分钟
2.实时更新
后端web
#echo "cc" > /var/www/html/c.html
客户端访问
#curl http://192.168.4.5/c.html
后端web
#echo "XX" > /var/www/html/c.html
客户端访问
#curl http://192.168.4.5/c.html 【过期】
代理更新:
#varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082
ban.url 页面文件名 //清空缓存数据,支持正则表达式。
Squid代理服务器 、 Varnish服务器
标签:
squid 、 varnish
原文地址:http://blog.51cto.com/13399301/2048117
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!