# popshit 的独立 iOS Location Spoofer 入口:https://tna.404044.xyz/ 选点:https://tna.404044.xyz/picker 独立仓库:https://github.com/popshit/ios-location-spoofer ## 手机首次使用 1. 在 Safari 打开入口,点击与你的代理客户端对应的“一键导入”。 2. 在代理客户端开启 HTTPS 解密 / MITM,安装并信任客户端证书,启用模块与代理引擎。 3. 打开选点页面,点击地图,或粘贴地图链接 / WGS-84 纬度,经度,点击“储存到设备”。 4. 查看页面的当前生效坐标,再到手机地图验证。恢复真实定位请使用页面清除/关闭功能。 5. Quantumult X 采用原生 rewrite_remote,不需要第三方解析器,但须手动添加 MITM 主机名。 MITM:gs-loc.apple.com, gs-loc-cn.apple.com, bluedot.is.autonavi.com, bluedot.is.autonavi.com.gds.alibabadns.com ## 工作原理与限制 手机代理脚本修改 Apple Wi-Fi/基站定位响应中的坐标,设置写入代理客户端本地存储。 这不是修改 GPS 硬件;GPS 信号、iOS 缓存和应用自身校验可能影响效果。网站部署成功不等于已在你的手机验证成功。 网页收藏夹在浏览器本地;地图短链接解析会把你提交的链接发送到本站和对应地图服务,服务器不记录查询参数或保存坐标。 原作者仓库、Workers 站点关闭不影响本站网页、模块、脚本、Leaflet 和说明文件。 地图瓦片、地点搜索、海拔查询和地图短链仍依赖各提供方;失败时可更换底图、直接粘贴 WGS-84 坐标并手填海拔。 iOS 定位协议、代理软件、域名、VPS 和 HTTPS 证书仍须可用,不能保证未来所有 iOS 版本都生效。 ## 无 npm 启动 需要 Node.js 22.16+(生产部署使用保存的 Node 24 LTS 二进制)。 node scripts/gen-assets.mjs node stateless-picker/worker/scripts/gen-modules.mjs node stateless-picker/worker/scripts/build-single.mjs PUBLIC_ORIGIN=https://你的域名 HOST=127.0.0.1 PORT=8787 node server.mjs 对外用 Nginx HTTPS 反向代理到 127.0.0.1:8787。PUBLIC_ORIGIN 固定生成模块链接,不信任请求 Host。 VPS 服务名 ios-location-spoofer,路径 /opt/ios-location-spoofer。 服务由 systemd 自动启动、失败重启;certbot 自动续期证书。恢复步骤见 deploy/README.md。 ## 来源与许可 基于 cyberhandyman/ios-location-spoofer 提交 fb0d861729d11e282c968cbf64ddea41d26a5457,保留完整上游历史、署名及 GNU AGPL-3.0 许可证。 修改:独立部署入口、Node 原生服务器、本地 Leaflet、原生 QX 引用、限制地图解析出站域名、关闭访问记录、部署与恢复材料。 Leaflet 1.9.4 遵循其随附 BSD-2-Clause LICENSE。 本站提供 /source.tar.gz 作为正在运行版本的对应源码下载。