skip to content
[WH LIAO]

国行苹果iPhone在Safari上跳转google.cn的问题与解决方案

/ 5 min read

Table of Contents

TLDR

  • 在国行iPhone上使用safari浏览器进行Google搜索时,搜索结果将被重定向到`google.cn`页面,无法直接显示搜索结果
  • 本文将介绍使用Shadowrocket(小火箭)配置HTTPS解密并添加URL Rewrite规则解决这一问题

配置HTTPS解密

生成并安装CA证书

  1. 打开Shadowrocket,点击底部「配置」选项卡
  2. 点击当前使用的配置文件右侧的 图标
  3. 找到「HTTPS解密」选项,点击进入
  4. 开启「HTTPS解密」开关
  5. 点击「证书」→「生成新的CA证书」
  6. 点击「安装证书」,此时会跳转到Safari浏览器

安装描述文件

在Safari中会提示下载配置描述文件:

  1. 点击「允许」下载描述文件
  2. 打开「设置」App
  3. 在设置页面顶部会显示「已下载描述文件」,点击进入
  4. 点击右上角「安装」
  5. 输入设备密码
  6. 点击右上角「安装」确认
  7. 安装完成后点击「完成」

信任证书

证书安装完成后,还需要在系统中信任该证书:

  1. 打开「设置」App
  2. 进入「通用」→「关于本机」
  3. 滑动到最底部,点击「证书信任设置」
  4. 找到刚刚安装的Shadowrocket证书
  5. 开启右侧的开关以信任该证书
  6. 在弹出的警告对话框中点击「继续」

在小火箭中开启HTTPS解密

  1. 返回Shadowrocket
  2. 确认证书安装
  3. 开启「HTTPS解密」开关

配置URL Rewrite规则

添加google.cn到HTTPS解密列表

返回Shadowrocket的HTTPS解密设置页面:

  1. 在「HTTPS解密」页面,确保开关已开启
  2. 点击「主机名」
  3. 点击右上角「+」添加
  4. 输入 www.google.cn (注意:必须是 www.google.cn,不要使用google.cn*.google.cn,否则可能导致证书错误或无法正常工作)
  5. 点击「保存」

添加重定向规则

  1. 返回Shadowrocket首页
  2. 点击底部「配置」选项卡
  3. 点击当前配置右侧的 图标
  4. 滑动到底部,找到「URL REWRITE」部分
  5. 点击右上角「+」添加规则

在添加规则页面,输入以下信息:

  • 匹配类型: 选择「302」(临时重定向)
  • 正则表达式: ^https?://(www\.)?(g|google)\.cn
  • 替换值: https://www.google.com
  • 备注: Google CN Redirect (可选)

点击「保存」完成规则添加。

这条规则的含义:

  • ^https?:// - 匹配http或https协议开头
  • (www\.)? - 可选的www前缀
  • (g|google)\.cn - 匹配g.cn或google.cn域名
  • 重定向到 https://www.google.com
  • 使用302临时重定向

测试配置

配置完成后,进行以下测试:

  1. 确保Shadowrocket已连接代理节点
  2. 打开Safari浏览器
  3. 访问 google.cn 或使用Google搜索
  4. 观察是否自动重定向到 google.com 并正常显示搜索结果

如果配置正确,你应该能够正常使用Google搜索,不再出现google.cn页面。

高级技巧

更进一步的重定向的更高级玩法,使用重定向、URL Scheme和捷径实现,只需要从主屏幕下拉,输入软件缩写 + 关键词,即可直接跳转到相应软件进行搜索。实现了类似macOS上Alfred的使用体验,具体实现可以参考:妙用重定向,优化 iOS 的搜索体验 - 少数派

Footnotes

  1. 升级 iOS15.4 后 url 重写失效导致 Safari 谷歌搜索引擎跳转至 google.com.hk 解决办法 - V2EX

  2. 大陆苹果用户如何优雅的在 Safari 上使用 Google 搜索? - 毒奶