type
status
date
slug
summary
tags
category
icon
password
发现问题
打算使用Twikoo评论插件为网站添加评论功能。服务启动,配置完成后,想要把评论区的头像修改成统一头像。访问Twikoo官网,提示需要前往https://weavatar.com设置头像。于是按照要求,设置好头像,但发现头像怎么都加载不对,尝试了
换浏览器
、强制刷新
、清理缓存
、删除cookie
等几乎所有的方法都无法修复
。定位问题
因为在Twikoo安装使用过程中,发现只有
烤南瓜
这个昵称会导致头像异常,根据我为数不多的开发经验来看,猜测是WeAvatar提供的服务未能正确返回头像。于是兴冲冲地找了WeAvatar支持小伙伴兴师问罪。WeAvatar小伙伴十分专业,看过预期和异常头像地址后,发现可能是
CDN缓存问题
,手动帮助刷新后,打开浏览器一看,果然正常了,可感谢的话还没说完,就发现Chrome浏览器仍然存在问题。群里的热心小伙伴提醒,可以试试无痕模式
,果然无痕模式没有问题。确定剩下的是我本地浏览器的问题后,谢过WeAvatar和群友,继续排雷。第一次尝试
既然只有Chrome浏览器异常,且无痕模式可以访问,于是第一时间安排了清理缓存套餐,果不其然,没有用。
紧接着就开始查看网络请求,发现远端地址请求的居然是本地。
而正常请求的地址是WeAvatar服务器IP:36.42.77.163。
恍然大悟,有点网络知识的我立马想到问题可能的原因:
DNS解析缓存
。找到问题所在处理起来就比较简单,只需要删除Chrome的DNS缓存即可: - 打开Chrome浏览器,在地址栏输入:
chrome://net-internals
- 点击
DNS
选项卡,点击Clear host cache
- 点击
Sockets
选项卡,点击Flush socket pools
搞定,重新访问头像,问题依旧,我麻了。
第二次尝试
没办法,只能开始抓取浏览器网络数据:
- 打开Chrome并访问
chrome://net-export
- 点击
Start Logging to Disk
按钮,选择文件保存的位置
- 刷新要访问的头像图片,点击
Stop Logging
- 打开https://netlog-viewer.appspot.com/#import,点击选择文件按钮,选择第二步导出的文件
- 会发现此时界面已经加载了许多数据。点击
HTTP/2
选项卡,搜索头像图片所在域名weavatar.com,果然依旧访问的本地。但此时注意到,访问协议是socks5,这是我本地代理使用的协议,才反应过来,1080端口正是我设置的本地代理服务端口。
问题解决
终于破案了。原来是访问weavatar.com时,走了代理导致的异常。
修改代理设置,改为直连之后,果然一切正常了。猜测是由于我刚刚修改头像,找WeAvatar小伙伴刷新了国内CDN,所以正常国内访问没有问题,而从境外转发的请求,结果仍然是旧数据导致的。无论如何,问题总算是解决了。
最后,感谢WeAvatar支持团队,过程中积极回复,配合处理问题;感谢群里的热心小伙伴。
- 作者:烤南瓜
- 链接:http://kaonangua.com/article/skill-remote-address-exception
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。