代码之家  ›  专栏  ›  技术社区  ›  Hoang Pham

iPhone上有主机文件吗?如何改变?[关闭]

  •  95
  • Hoang Pham  · 技术社区  · 15 年前

    我正在开发一个向服务器查询的应用程序。在我的Mac中,我使用hosts文件更改DNS以指向局域网中的本地服务器。

    现在我需要用我的iPhone测试它,问题是我的iPhone无法识别该服务器,因为缺少DNS的配置。

    在我的Mac或Windows上,我只需添加: 192.168.0.20 http://www.google.com 到hosts文件。

    现在,我如何让我的iPhone知道网址: http://www.google.com ?

    8 回复  |  直到 7 年前
        1
  •  34
  •   Andrew Bullock    15 年前

    这并不能直接回答你的问题,但它确实解决了你的问题…

    你有什么样的路由器?路由器固件可能允许您为本地网络设置DNS记录。这就是我要做的 Tomato firmware

        2
  •  73
  •   caramba    9 年前

    这里的另一个选择是通过代理服务器连接您的iPhone。下面是一个如何使用小提琴的例子(非常简单):

    http://conceptdev.blogspot.com/2009/01/monitoring-iphone-web-traffic-with.html

    在这种情况下,iPhone所做的任何DNS查找都将使用运行fiddler的主机文件。 注释 但是,您必须使用将通过DNS解析的名称。 example.local 例如,将不起作用。 example.xyz example.dev 威尔。

        3
  •  31
  •   Andreas Bonini    15 年前

    与编程无关,但我还是会回答。它在 /etc/hosts .

    您可以使用简单的文本编辑器(如 nano .

    (很明显,你需要一部越狱iPhone)

        4
  •  13
  •   Simon E. pbs    14 年前

    我刚刚成功地编辑了iPhone的“主机”文件(在越狱iOS 4.0上)。

    • 安装 OpenSSH 通过Cydia进入iPhone
    • 使用A SFTP客户端 喜欢 FileZilla 在我的电脑上,我连接了我的iPhone
      • 地址: [使用手机的IP地址或主机名,例如 simophone.local ]
      • 用户名: root
      • 密码: alpine
    • 位于 /etc/hosts 文件
    • 做了一个 备份 在我的计算机上(以备稍后恢复更改)
    • 已编辑主机文件 在像样的文本编辑器中(例如 Notepad++ )见 here 以获取主机文件的解释。
    • 已上载更改 ,覆盖iPhone上的主机文件

    手机会缓存一些网页和DNS查询,因此重新启动或清除缓存可能会有所帮助。希望能帮助别人。

    西蒙。

        5
  •  6
  •   oefe    15 年前

    它可能存在,但你不能在非越狱iPhone上更改它。

    假设您的开发Web服务器在Mac上,为什么不简单地使用它的Bonjour名称(例如 MyMac.local. )而不是 myrealwebserverontheinternet.com ?

        6
  •  5
  •   ekscrypto    10 年前

    如果其他人进入此页面,您也可以使用URL请求中的IP地址而不是域来解决此问题:

    NSURL *myURL = [NSURL URLWithString:@"http://10.0.0.2/mypage.php"];
    

    然后手动指定主机:

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:myURL];
    [request setAllHTTPHeaderFields:[NSDictionary dictionaryWithObjectAndKeys:@"myserver",@"Host"]];
    

    就服务器而言,它的行为方式与使用 http://myserver/mypage.php 除了iPhone不需要进行DNS查找。

    100%公共API。

        7
  •  4
  •   Jaanus    15 年前

    不要在电话上更改DNS。相反,通过wifi连接到本地网络,您就都设置好了。

    在我的办公室,我们有内部服务器,内部DNS不暴露在互联网上。我只需将iPhone连接到办公室WiFi,然后就可以正常访问它们。

    YMMV,但我觉得,仅仅设置本地内部DNS和WiFi是一个更干净、更简单的解决方案,而不是配置电话DNS。

        8
  •  1
  •   Stephen Darlington    15 年前

    不,iPhone应用程序只能在自己的小沙盒中更改内容。(即使有一些事情你也不能随时随地改变。)

    最好的选择可能是使用服务器的IP地址,而不是主机名。稍微硬一点,但不是 那个 如果你只需要解析一个地址就很难了,那就是在你的Mac上安装一个DNS服务器,然后配置你的iPhone来使用它。

    推荐文章