标签 chrome 下的文章

chrome登陆谷歌账号后部分网站502的解决办法

appleid.apple.com,icloud.com等苹果网站的登陆页面打开时出现502错误,或者调试页面发现idmsa.apple.com返回502。

不止苹果网站,其他一些网站也会出现以下问题。

比如打开appleid.apple.com时
chrome的请求是:

GET / HTTP/1.1
Host: appleid.apple.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.75 Safari/537.36
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Sec-Fetch-Site: none
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9

页面显示502 bad gateway

换成safari没有问题,win 系统下同一个账户登陆的chrome同样的502页面,edge没问题,
通过postman调试发现
postman
不带Accept-Language后返回正常,Accept-Language只有中文,怀疑是语言导致的
通过几次测试后发现Accept-Language中zh-cn排到第一个就会返回502,zh,en-us,en等排第一个不会502

chrome的header的Accept-Language添加语言的方法是chrome设置-->高级-->语言,这里添加英语并调整到第一位。

这个锅需要苹果背。

都是chrome语言设置中 中文(中国)排在第一位出现的,应该是服务端的bug。

chrome不用插件虚拟定位

chrome虚拟gps定位:

使用google地图找到需要虚拟定位的坐标,如图
需要定位的坐标
打开chrome的开发者工具的sensors,输入上面的坐标
chrome的sensors
输入坐标
在当前tab页打开网址
虚拟定位已打开

记录chrome使用dns服务器的一个坑

dhcp分配的主dns是pcap——dnsproxy搭建的dns服务器,备用dns是四个8
chrome加载js、css等cdn服务器上等静态文件时,一直pending直到超时failed,而同时safari,wget、dig等加载和解析都是没有问题的。

safari和wget、dig等都默认使用主dns地址去解析域名,chrome可能基于某些原因使用了8.8.8.8,chrome加载pending超时之后faild不显示ip地址,而使用dig去查询域名的时候使用的是主dns地址去查询的,所以获取的地址没有问题,在使用chrome://net-internals去调试chrome的时候没有仔细看dns栏里的解析地址,后来使用wireshark抓包发现大量tcp重传,重传包的目的地址是拒绝访问的ip,再翻过头来去看chrome://net-internals/#dns里的解析地址,发现cnd解析到的地址是拒绝访问的ip,推测chrome使用的dns服务有问题,查看dhcp获取的dns地址,发现备用dns服务器为8.8.8.8,修改dhcp配置,重新连接网络后,问题解决。

gfw的whitelist结合shadowsocks或kcptun使用效果更佳

先说一下白名单的好处,gfw是实时更新的,说不定上一秒你还能打开的网站,下一秒就被墙里,直接开全局国内网站打不开或者速度特别慢,白名单是国内网站的名单,白名单里的网站不走代理,其余全部代理,国外没有被墙的网站反正速度都不快,我自己感觉打开速度差不多,白名单缺点是费vps流量,原来没有在黑名单的国外网站是不走vps流量的,现在走流量了。但是vps流量也不贵,我自己测算,不下载大文件情况下,一个人算上看油管视频,一个月500g流量是够用的,所以这个缺点是可以忽略的。

下面是设置方法
chrome安装插件SwitchyOmega,创建pac模式代理,填入pac下载路径

https://raw.githubusercontent.com/breakwa11/gfw_whitelist/master/whiteiplist.pac

如果代理地址不是本机1080,删除pac url,直接在下面框里修改即可
添加pac配置
修改pac

macos下,在网络设置高级的代理里面,自动代理,填入pac下载路径,注意safari不能识别socks5关键字,添加一个socks即可,如下

var wall_proxy = "SOCKS5 127.0.0.1:1080; SOCKS 127.0.0.1:1080;";

ios系统也可以使用macos配置方法,wifi设置里http代理,自动填入上面的下载地址

pac下载服务器可以使用python的simpleserver,pac文件放到当前目录,运行

python -m SimpleHTTPServer 8080
参考:https://github.com/breakwa11/gfw_whitelist