为什么无法使用
- Chrome浏览器自带的网页谷歌翻译(右键->翻译中文),调用的 API 接口域名为translate.googleapis.com,近期突然无法使用了,是因为谷歌关闭了国内的谷歌翻译在线版(translate.google.cn),因此,连带导致谷歌翻译 API 接口域名的解析也从国内 IP 改到了不可用的谷歌国外IP。
- 目前已经没有办法直接访问“谷歌翻译在线版”( translate.google.cn)了,改Hosts 也不行,无解。本文仅针对网页翻译部分。
解决思路
- 谷歌国外IP虽然不可用,但是有国内服务器依然可用,所以只需手动在 hosts文件中更新国内服务器 IP ,之后通过hosts将服务器重定向到国内其它的服务器上,即可复活谷歌翻译。
基础方法
步骤1、查找可用服务器地址
- 可通过nslookup或ping命令获取可用地址;
C:\Users\Administrator>nslookup google.cn 服务器: UnKnown Address: 192.168.1.1 非权威应答: 名称: google.cn Address: 203.208.41.34
C:\Users\Administrator>ping google.cn 正在 Ping google.cn [203.208.41.34] 具有 32 字节的数据: 来自 203.208.41.34 的回复: 字节=32 时间=18ms TTL=118 来自 203.208.41.34 的回复: 字节=32 时间=18ms TTL=118 203.208.41.34 的 Ping 统计信息: 数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 18ms,最长 = 18ms,平均 = 18ms
- 如果网络正常,可以获取到类似上面的信息,其中203.208.41.34就是可用的 IP 地址;
- 拿到IP之后,要确认下是否可以ping通,如果ping不通,应该是无法使用的。
步骤2、修改hosts文件
- hosts文件位置
Windows:C:\Windows\System32\drivers\etc
MAC:/etc/hosts
IOS:/etc/hosts
安卓:/system/etc/hosts Linux:/etc/hosts
- 修改示例,打开hosts文件,增加下面一行即可:
203.208.41.34 translate.googleapis.com
- 这里务必要确认hosts文件是否有写权限(尤其是使用脚本修改的方式),是否修改成功了。
步骤3、重启浏览器并刷新DNS
- 重启浏览器;
- 尝试清空 DNS 缓存后(如果是Windows的话,可在cmd 中执行 ipconfig /flushdns),再重启浏览器。
使用命令行操作
- 以Windows系统为例,可将修改hosts文件与更新DNS集成到一个命令中:
C:\Users\qxhgd>echo 74.125.200.94 translate.googleapis.com >> C:\Windows\System32\drivers\etc\hosts & ipconfig /flushdns > nul
自动化方法
- 前面各个步骤都无需执行,以管理员身份运行链接中的脚本即可:脚本链接