varnish 配置使用 Chrome,iphone,android 请求响应各自的页面
2014-09-26 00:36
459 查看
简单拓扑如下
后端服务器上有4个网页文件,每个文件分别如下,每个文件都对应相应的客户端请求
index.html
chrome.html
admroid.html
iphone.html
varnish 下载区 http://repo.varnish-cache.org/
这里使用的软件版本
varnish-3.0.5-1.el6.x86_64.rpm 提供varnish主程序
varnish-docs-3.0.5-1.el6.x86_64.rpm 提供varnish文档
varnish-libs-3.0.5-1.el6.x86_64.rpm 提供varnish的共享库
因为有依赖关系,最好使用yum安装。
/etc/rc.d/init.d/varnish 启动varnish服务的脚本
/etc/rc.d/init.d/varnishlog varnish查看日志的服务脚本
/etc/rc.d/init.d/varnishncsa varnish查看ncsa风格日志的脚本
/etc/sysconfig/varnish varnish主程序工作特性的配置文件
/etc/varnish varnish对缓存决策、backend server 等相关配置文件存放的目录
/etc/varnish/default.vcl varnish缓存默认配置文件,使用vcl定义。
/usr/bin/varnish_reload_vcl 实现varnish动态装载配置文件的工具
/usr/bin/varnishadm 连接varnish管理varnish的客户端工具
/var/lib/varnish 缓存存储为文件时存放的位置
编辑/etc/sysconfig/varnish文件修改以下几个参数的值
chrom上的截图
IE的截图
iphone上safari和uc的访问截图
使用android设备上的360浏览器截图
未完待续!!!!
后端服务器上有4个网页文件,每个文件分别如下,每个文件都对应相应的客户端请求
index.html
chrome.html
admroid.html
iphone.html
varnish 下载区 http://repo.varnish-cache.org/
这里使用的软件版本
varnish-3.0.5-1.el6.x86_64.rpm 提供varnish主程序
varnish-docs-3.0.5-1.el6.x86_64.rpm 提供varnish文档
varnish-libs-3.0.5-1.el6.x86_64.rpm 提供varnish的共享库
因为有依赖关系,最好使用yum安装。
# yum install var*.rpmvarnish主包安装后生成主要文件说明
# rpm -ql varnish/etc/logrotate.d/varnish
/etc/rc.d/init.d/varnish 启动varnish服务的脚本
/etc/rc.d/init.d/varnishlog varnish查看日志的服务脚本
/etc/rc.d/init.d/varnishncsa varnish查看ncsa风格日志的脚本
/etc/sysconfig/varnish varnish主程序工作特性的配置文件
/etc/varnish varnish对缓存决策、backend server 等相关配置文件存放的目录
/etc/varnish/default.vcl varnish缓存默认配置文件,使用vcl定义。
/usr/bin/varnish_reload_vcl 实现varnish动态装载配置文件的工具
/usr/bin/varnishadm 连接varnish管理varnish的客户端工具
/var/lib/varnish 缓存存储为文件时存放的位置
编辑/etc/sysconfig/varnish文件修改以下几个参数的值
VARNISH_LISTEN_PORT=80 修改为客户端请求监听的端口 VARNISH_STORAGE_SIZE=32M 设置用来缓存空间的大小为32M VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}" 设置使用内存为缓存介质# /etc/varnish/default.vcl varnish的缓存策略文件内容如下
backend www1 { .host = "172.16.2.10"; .port = "80"; } sub vcl_recv { if (req.url ~ "/$" && req.http.User-Agent ~ "iPhone"){ 如果请求的url最后了/并且是iphone set req.url = req.url + "iphone.html"; 在请求的url后面加iphone.html } if (req.url ~ "/$" && req.http.User-Agent ~ "Android"){ set req.url = req.url + "android.html"; } if (req.url ~ "/$" && req.http.User-Agent ~ "Chrome"){ set req.url = req.url + "chrome.html"; } return (lookup); }编辑好后启动varnish程序
# service varnish start使用各个客户端测试的截图
chrom上的截图
IE的截图
iphone上safari和uc的访问截图
使用android设备上的360浏览器截图
未完待续!!!!
相关文章推荐
- 使用 桌面的 chrome 远程调试 Android 的页面
- Flask 中使用 JSON 响应页面的 Ajax 请求报错 TypeError: 'dict' object is not callable
- iOS开发工具-如何使用网络封包分析工具Charles,通过配置proxy对http、https、tcp、udp 等协议的请求响应过程交互信息进行分析、判断、解决我们移动开发中的遇到的各种实际问题。
- Android使用Https请求,双向认证、app端配置
- Struts2使用注解,完成请求响应,实现零配置
- Android中使用的定时针(刷新页面请求服务器)详解
- android 项目中使用到的网络请求框架以及如何配置好接口URL
- PHP如何响应移动端(android or ios)的post请求(使用file_get_contents)
- 使用 桌面的 chrome 远程调试 Android 的页面
- 使用ajax发送请求到WebService,需要在服务器端配置响应头和响应协议
- Android及时通讯——配置环信及时通讯注意地方,EvevtBus使用详解,网络请求过程中退出出错处理办法
- Vue------第五天(Vue的Ajax请求,使用Axios,目前熟悉了一下,主要包括GET请求、POST请求、并发请求、请求参数的配置、服务器响应的结构以及对服务器响应错误的简单处理)
- android 项目中使用到的网络请求框架以及怎样配置好接口URL
- 使用Chrome测试页面响应性
- 使用chrome调试android前端页面
- 从 iOS,Objective-C, IPhone, iPad, Android, Java, Node.js 或其他平台,或通过其他开发语言,使用WS-Trust请求一个ADFS的令牌
- SERVER2008IIS服务器不能正常使用(由于扩展配置问题而无法提供您请求的页面,如果该页面是脚本...)
- android,retrofit,okhttp,日志拦截器,使用拦截器Interceptor统一打印请求与响应的json
- 掌握 Ajax,第 7 部分: 在请求和响应中使用 XML
- 掌握 Ajax,第 7 部分: 在请求和响应中使用 XML(1)