设为首页 收藏本站
查看: 1528|回复: 0

[经验分享] Apache Traffic Server 5.3.2及6.2.1的使用初探索

[复制链接]

尚未签到

发表于 2018-10-19 07:46:41 | 显示全部楼层 |阅读模式
转载  a、打开 record.config 文件,修改或者添加如下内容:
  LOCAL proxy.local.cluster.type INT 1
  CONFIG proxy.config.proxy_name STRING MyCluster
  CONFIG proxy.config.cluster.ethernet_interface STRING eth0
  b、集群需要满足下面的条件:
  1、集群中的机子配置要相同
  2、集群中的机子要使用相同版本的ATS
  3、集群中的机子需要在同一个ip段
  4、集群中名称必须相同proxy.config.proxy_name
  c、重新启动 ATS ,或者使用下面的两条命令:
  traffic_line -x
  traffic_line -L
  d、使用 traffic_line -r proxy.process.cluster.nodes查看集群中的机子数量
六、防盗链配置
  a、打开 record.config 文件,修改或者添加如下内容:
  CONFIG proxy.config.http.referer_filter INT 1
  b、打开 remap.config 添加如下内容:
  map_with_referer http://www.ats200.com/ http://www.test200.com/http://127.0.0.1/error.html ~* .*\.bzq\.com
  格式为:
  map_with_referer client-URL origin-server-URL redirect-URLregex1 [regex2 ...]
  其中, ~* 表示Referer头是可选的(没有Referer头正常访问)
  上边配置的意思是:
  1、请求头中没有Referer头的可以正常访问
  2、请求头中有Referer头,并且Referer头字段的内容是 .*\.bzq\.com的才可以正常访问
  3、不符合上边两条规则的,会自动跳转到 http://127.0.0.1/error.html页面
七、DNS 解析服务器指定
  a、打开 record.config 文件,修改或者添加如下内容:
  CINFIG proxy.config.dns.splitDNS.enabled 1
  b、打开 splitdns.config 文件,加入如下内容:
  dest_domain=www.ats100.com named="192.168.210.2"
  c、上边配置的意思就是域名 www.ats100.com 在 192.168.210.2 域名解析服务器上解析
八、ui界面检查缓存状态:
  1. 主配置文件records.config
  加入:CONFIG proxy.config.http_ui_enabled INT 3
  CONFIG proxy.config.http.enable_http_info INT 1 (可选项)
  remap.config:
  map http://www.test100.com/ http://www.test100.com/
  map http://www.ui.com/ http://{cache} @action=allow@src_ip=192.168.153.1
  测试:
  map http://192.168.180.195/cache-internal/http://{cache-internal}
  maphttp://192.168.180.195/cache/ http://{cache}
  maphttp://192.168.180.195/stat/ http://{stat}
  maphttp://192.168.180.195/test/ http://{test}
  maphttp://192.168.180.195/hostdb/ http://{hostdb}
  maphttp://192.168.180.195/net/ http://{net}
  map http://192.168.180.195/http/ http://{http}
  iparent.config:
  dest_domain=www.test100.com parent="192.168.215.3:80"round_robin=strict
  注意:这里如果在remap里map的映射设置的是ip,在使用ui工具时查询时必须输入ip+path来查询,因为缓存时以ip加文件名为key缓存的,
  2.打开浏览器,配置好host (www.ui.com)
  访问www.ui.com,会出现
  Lookup url
  Delete url
  Regex lookup
  Regex delete
  Regex invalidate
  3.先访问test100让其缓存,然后点击各个可查看缓存信息,Lookup url 输入url:http://www.test100.com/test2.html,即可查看信息
  点击delete url 可以删除该缓存中的 url
九、加入lua,配置响应头信息:
  1.修改配置文件plugin.config
  加入:background_fetch.so
  2.修改配置文件remap.config
  map http://www.test100.com/ http://www.test100.com/@plugin=/usr/local/ats/libexec/trafficserver/tslua.so@pparam=/usr/local/ats/lua_ats/test_hdr.lua
  注意:@plugin 这里需要加载tslua.so库, @pparam 这里是编写的lua脚本。
  3.脚本如下(下面是测试的脚本):
  function send_response()
  ts.client_response.header['Host'] =ts.ctx['hdr']
  ts.client_response.header['request-get-method']= ts.ctx['re']
  ts.client_response.header['Uri'] =ts.ctx['uri']
  ts.client_response.header['server'] =ts.ctx['ser']
  local cache_status = ts.http.get_cache_lookup_status()
  if cache_status == TS_LUA_CACHE_LOOKUP_MISS then
  ts.client_response.header['cache-lookup'] ='MISS'
  elseif cache_status == TS_LUA_CACHE_LOOKUP_HIT_STALE then
  ts.client_response.header['cache-lookup'] ='HIT_STALE'
  elseif cache_status == TS_LUA_CACHE_LOOKUP_HIT_FRESH then
  ts.client_response.header['cache-lookup'] ='HIT_FRESH'
  elseif cache_status == TS_LUA_CACHE_LOOKUP_SKIPPED then
  ts.client_response.header['cache-lookup'] ='HIT_SKIPPED'
  end
  return 0
  end
  function do_remap()
  ts.ctx['hdr'] ='www.test100.com'
  ts.ctx['ser'] = 'wang'
  ts.ctx['re'] = ts.client_request.get_method()
  ts.ctx['uri'] = ts.client_request.get_uri()
  ts.hook(TS_LUA_HOOK_SEND_RESPONSE_HDR, send_response)
  return 0
  end
  开启DEBUG
  traffic_ctl config setproxy.config.diags.debug.enabled 1
  然后去日志diags.log或者traffic.out查看有无匹配http_match的日志
  cache_heuristic_min_lifetime=3600导致cache.config的超时配置无效,群里表示是个BUG需反馈


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-623356-1-1.html 上篇帖子: 新手学习SQL 注入式*** 下篇帖子: MS SQL Server 与 Oracle在应用上的不同 : 如果应用系统要迁移
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表