您的位置:首页 > 运维架构 > Apache

Apache Traffic Server 4.2.1上的坑!

2014-05-08 17:44 525 查看
问题一:

现象描述:

昨天在CentOS 6.3 64位虚机上成功安装ATS 4.2.1上无法正常启动?但是安装一切正常。使用trafficserver start启动后,最后显示启动失败,没有任何错误日志或是错误提示信息。经过研究trafficserver这个脚本,也没有发现问题。

解决方法:

今天被老大解决了,原来是我们公司内部的那台服务器上没有开启syslog服务,导致错误日志无法打印。traffic_cop 依赖 syslog 服务。要先启动

service rsyslog start

补记:

今天在ATS文档官网地址
http://trafficserver.readthedocs.org/en/latest/admin/working-log-files.en.html#understanding-traffic-server-log-files
了解到,ATS通常会记录三种类型的日志,访问日志,错误日志和系统日志。系统日志使用syslog守护进程记录的,以CentOS为例,该守护进程为rsyslog,它会在/etc/rsyslog.conf配置文件中指定日志文件为/var/log/messages,所有的日志都会记录在/var/log/messages文件中。

问题二:

在Ubuntu 14.04上安装ATS 4.2.1,发现如下错误

> libhwloc not linked properly on ubuntu 13.10:
> /usr/bin/ld: ../lib/ts/.libs/libtsutil.so: undefined reference to symbol 'hwloc_get_type_depth'
> /usr/lib/x86_64-linux-gnu/libhwloc.so: error adding symbols: DSO missing from command line

解决方法:

暂无

问题三:

插件中使用TSUrlHostGet和TSMimeHdrFieldFind(bufp, hdr_loc, TS_MIME_FIELD_HOST, TS_MIME_LEN_HOST);获取url的host时,会有差异,前者个别域名获取不出来,后者可以正常获取。前者获取不出来的域名比如有
http://a.autoimg.cn/s?lp=10191&_v_TypeId=2353&_v_ad_ProvinceAreaID=-1&_v_ad_BBS_AreaName=-1&_v_brandID=8&_v_areaPropertyProvince=0&_v_ad_BuyStageID=&_v_ad_PriceIntervalID=&_v_ad_LevelID=&_v_ad_UserT%20ypeID=&_v_ad_PriceDirectionalID=-1&_v_ad_UserBrandID=&_a_ad_CarlevelID=15&_v_ad_BigBrandID=&area=211099
下面的Authproxy/Utils代码截图很清楚地给出了正确获取host的通常步骤,首先从MIME field获取,如果没有,就使用url中的:



大家在使用上述API开发插件时一定要注意。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: