如何创建WiFi弹出登录页面

时间:2010-09-01 05:01:58

标签: iphone wifi

当我去一个有WiFi热点的地方(如Panera Bread)并连接我的iPhone时,热点登录页面会显示为弹出窗口。也就是说,无论我正在运行什么应用程序或我在哪个网页,登录页面都会从底部向上滚动,询问我的登录凭据,然后消失。

但是在其他一些热点地区,在我去Safari并尝试加载网页之前,我没有登录页面。

iPhone正在寻找什么导致它在一些热点而不是其他热点上弹出登录页面?是否有特殊的HTML元标记?或者它与重定向的实现方式有关?

3 个答案:

答案 0 :(得分:36)

我设法找到了这种身份验证类型的正确术语:“强制门户网站”。将Captive Portal iPhone打入Google中,可以从这些页面中找到一些技术细节:onetwothree

要实施Wi-Fi弹出式登录页面:

  1. www.apple.com的DNS请求不得失败
  2. 具有特殊用户代理CaptiveNetworkSupport/1.0 wispr的{​​{3}}的HTTP请求不得返回Success
  3. 我没有对此进行测试,但听起来不错。


    下面的评论提到 iOS 7 的行为不同,可能会查询多个服务器。我没有测试过这个。最简单的方法是简单地将所有HTTP通信重定向到您的登录页面,并阻止所有非HTTP通信。

    Microsoft 强制门户检测http://www.apple.com/library/test/success.html到iOS7之前的行为:其网络连接状态指示器尝试联系uses something similar。 Windows 8和8.1也http://www.msftncsi.com

    Android 的强制网络门户检测,自AOSP 4.0.1起,include support for WISPr联系tries tohttp://clients3.google.com/generate_204

    因此,为了尽可能通用,您只需要阻止除身份验证之外的所有通信,并在登录页面上包含WISPr支持。

    我会说“在你的网络上使用正确的身份验证” - 一些通用的东西,如PEAP + MSCHAPv2 - 但Windows让你的用户设置起来非常痛苦。我不知道谁认为“使用您的Windows身份验证详细信息”在不属于公司域网络的计算机上做出了合理的默认设置,甚至为什么“检查证书有效性”是一个理智的默认设置,因为大多数网络将考虑优先获得正确的证书。

答案 1 :(得分:1)

iOS 6显然修复了WPA2 EAP,因为它现在突然弹出登录窗口。

我们公司的公共WiFi需要接受有关监控等的条款。我总是不得不在iPhone或iPad上手动打开Safari并在某处导航,它会重定向到内部接受页面,当您点击“接受”按钮时,它会转到您所在的位置最初是头。

今天,我更新到iOS 6,看到登录窗口从底部向上滑动并允许我点击“接受”按钮,甚至没有打开Safari,这让我感到非常惊讶。

答案 2 :(得分:-4)

我怀疑当弹出登录页面时,Wi-Fi正在使用EAP。这是用于身份验证的Wi-Fi协议。在您需要访问网页的情况下,身份验证将是服务器实现的自定义访问(即在更高级别 比EAP)。