【发布时间】:2015-02-14 19:20:06
【问题描述】:
我用 iptables 创建了一个强制门户
我使用很多人似乎都在使用的东西:用户可以请求 DNS,数据包标记为 99。99 表示用户无法访问互联网。
当用户访问页面时访问例如堆栈溢出。用户获得免责声明。他/她点击确定。发生的事情是服务器执行以下规则:
`sudo /sbin/iptables -t mangle -I captivePortal 1 -m mac --mac-source {$mac} -j RETURN`;
`sudo /sbin/iptables -t mangle -I captivePortal 1 -s {$_SERVER['REMOTE_ADDR']} -j RETURN`;
我尝试过的:
用过的 sinatra 单用瘦身。使用 erb 渲染模板。当用户在验证后重新加载时,他们会在访问初始域时获得免责声明。当访问另一个他们没有得到免责声明页面。
用php设置apache2,全部用php重写。添加了元标记以防止在浏览器中缓存但结果相同。原始域总是重定向到免责声明,但其他网站还可以。
我想要达到的目标
用户需要在免责声明中点击接受才能使用WIFI。
编辑:重新加载 apache2 确实可以解决这个问题。
【问题讨论】: