代码之家  ›  专栏  ›  技术社区  ›  Barry Brown

如何创建WiFi弹出登录页面

  •  29
  • Barry Brown  · 技术社区  · 16 年前

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

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

    3 回复  |  直到 12 年前
        1
  •  36
  •   Community Mohan Dere    9 年前

    我设法找到了这种身份验证类型的正确术语:“捕获门户”。打孔 Captive Portal iPhone one , two , three .

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

    1. www.apple.com 决不能失败
    2. HTTP请求 http://www.apple.com/library/test/success.html 使用特殊用户代理 CaptiveNetworkSupport/1.0 wispr 不得返回 Success .

    我没有测试过这个,但听起来差不多。


    行为不同,可以查询多个服务器。我没有测试过这个。所以最简单的方法就是将所有HTTP通信重定向到您的登录页,并阻止所有非HTTP通信。

    微软 的捕获入口检测 uses something similar 到iOS7之前的行为:其网络连接状态指示器尝试联系 http://www.msftncsi.com include support for WISPr .

    安卓 的捕获入口检测,从AOSP 4.0.1开始, tries to http://clients3.google.com/generate_204 或 http://www.google.com/blank.html

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

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

        2
  •  1
  •   James Brickley    14 年前

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

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

    今天,我升级到了iOS6,很高兴看到登录窗口从底部向上滑动,允许我在不打开Safari的情况下点击Accept按钮。

        3
  •  -4
  •   RichB    16 年前

    我怀疑当登录页面弹出时,Wi-Fi正在使用 EAP 而不是EAP)。