iPhone iPad等iOS 设备上配置修改 hosts 方法
25
44,183
A+
所属分类:hosts
前提
iOS 设备指的是 iPhone/iPod touch/iPad 等运行 iOS *** 作系统的移动设备。
为了测试网页在这些移动设备上的表现,我们往往需要使用真实的设备去访问内网的开发/测试环境。在某些时候,服务器端严格绑定域名(不允许使用 IP 地址访问),而且这个域名往往是虚拟的域名(比如yoursite.dev 之类),我们就需要在移动设备上配置 hosts。
最重要的一点,你的设备最好是已经越狱的。越狱的目的不是装盗版软件,是为了获取系统的最高权限,这样才有可能修改 hosts 这样的系统级文件。(同理,在 Android 设备上修改 hosts 文件需要获取 root 权限。)
如果无法越狱(比如你手贱把系统升级到了最高版本),则可参考本文末尾的后备方案。
*** 作步骤
首先,我们需要安装最新版的 iTunes。因为它包含了 iOS 设备的驱动程序,装了它,Windows 才能正常识别设备。
然后,我们需要安装“同步助手”。暂不去纠结这个软件是不是盗版工具,它是目前最好用的 iOS 设备的资源管理器,我们这里只需要用到它的文件管理的功能。
进入文件管理界面,进入 /etc 目录,可以找到 hosts 文件。
把它拖到桌面,就可以为所欲为了。修改完成之后,再拖回去替换原文件即可。
在修改过程中,唯一值得一提的恐怕就是换行符的格式了吧。本质上 iOS 是一个功能完备的 UNIX 系统,它的文本文件的换行符当然使用 UNIX 格式,与我们通常使用的 DOS/Windows 格式不一样。安全起见,建议你在保存文件的时候,留意换行符的格式。(参见下图)
后备方案
这里介绍两种后备方案,也适用于无法修改 hosts 的其它移动设备。
真实域名法
即注册一个真实的域名,解析到内网的开发/测试机。这实际上是一个变通的办法,它有一些显而易见的缺点:
需要花钱买域名。
可能需要更新服务器端的域名白名单——前端工程师往往没有这个权限。
域名解析通过外网 DNS 实现,比起 hosts 本地解析要慢一些。
代理法
在本地开发机上建一个代理服务器,让 iOS 设备通过代理服务器访问。这样域名解析这一步是在开发机完成的,只要把开发机的 hosts 配置好就可以了。
架设代理服务器并不复杂,有现成的方案,就是前端神器 Fiddler(只需要选中“允许其它机器连接”选项就可以了),顺道还可以调试移动设备的 HTTP 连接。
现在很多国外网站需要修改hosts文件才能访问,win系统和安卓系统的方法都已发布,现在来写下苹果系统。
Mac OS用户修改hosts文件: host位置为:/private/etc/hosts
iPhone手机用户修改hosts文件:需越狱,使用 iFunBox、PP助手、同步助手、iFile 等访问设备文件系统,备份并修改该文件后覆盖:/etc/hosts
下面为用PP助手修改hosts文件的截图:
具体如下。如果你使用的是代理,就尝试将它关闭或使用良好的网络。更新itunes到最新版本,也可能会解决该问题。修改hosts的文件具体步骤如下:在开始菜单的运行中手动输入cmd,打开命令行窗口,输入命令“nslookupgs.apple.com”,会找到你地区访问gs.apple....再打开(C:WindowsSystem32driversetc)点进hosts文件,点击鼠标右键,点击用记事本打开,会在最后一行会显示。
iPhone是苹果公司(AppleInc.)发布搭载iOS *** 作系统的系列手机。截至2021年4月,苹果公司(AppleInc.)已发布24款手机产品,初代:iPhone,最新版本:iPhone13mini,iPhone13,iPhone13Pro,iPhone13ProMax;iPhone系列产品静音键在设备正面的左侧;iPhone5之前机型使用30Pin(即30针)接口,iPhone5(包含)之后产品使用Lightning接口。iPhoneX之前机型配置Home键iPhoneX(包含)之后机型取消了实体Home键。iPhone系列机型自iPhone4之后配置AppleSilicon自研芯片。TouchID在iPhone5s上首次出现;iPhone6s和iPhone6sPlus首次在屏幕上加入了3DTouch压力感应触控;无线充电在iPhone8、iPhone8Plus机型首次出现,采用Qi(Chee)无线充电标准。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)