0

我在 OpenWRT 15.05.01 设备上安装了 nodogsplash 版本 0.9_beta9.9.9,当我使用浏览器(mozzila、chrome)访问强制门户并单击“继续”后它们将我重定向到 pre-设置页面。

这是我的代码:

    `<!DOCTYPE html>
<html>
<head>
<!--
A client is authenticated by requesting the page $authtarget.
        So, href to it here, with an img or link text the user can click on
        Alternatively submit an HTTP form method=get, passing $authaction,
        Also, note that any images you reference must reside in the
        subdirectory that is the value of $imagesdir (default: "images").
Available variables:
        error_msg: $error_msg
        gatewayname: $gatewayname
        tok: $tok
        redir: $redir
        authaction: $authaction
        denyaction: $denyaction
        authtarget: $authtarget
        clientip: $clientip
        clientmac: $clientmac
        gatewaymac: $gatewaymac
        nclients: $nclients
        maxclients: $maxclients
        uptime: $uptime
        imagesdir: $imagesdir
        pagesdir: $pagesdir
Additional Variables that can also be passed back via HTTP get.
Or just append them to the authentication link:
        nodoguser
        nodogpass
        info
        voucher
-->

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalida
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel='shortcut icon' href='$imagesdir/splash.jpg' type='image/x-icon' 
<title>$gatewayname Entry</title>                                          

<style>                                                                    
body                                                                       
{                                                                          
background-color:lightgrey;                                                
color:black;                                                               
margin-left: 5%;                                                           
margin-right: 5%;                                                          
text-align: left;                                                          
}                                                                          
img                                                                        
{                                                                          
width: 40%;                                                                
max-width: 180px;                                                          
margin-left: 0%;                                                           
margin-right: 5%;                                                          
}                                                                          
input[type=submit]                                                         
{                                                                          
color:black;                                                               
margin-left: 0%;                                                           
margin-right: 5%;                                                          
text-align:left;                                                           
font-size: 1.0em;                                                          
line-height: 2.5em;                                                        
font-weight: bold;                                                         
border: 1px solid;                                                         
}                                                                          
</style>                                                                   
</head>                                                                    

<body>                                                                    
<b>Funz Hotspot Gateway.</b>                                        
<br>                                                                                                                                        
<br>                                                                       
<b>                                                                        
<img src="$imagesdir/splash.jpg" alt="Splash Page:For access to the Interne
<hr>                                                                       
<span style="color:red; font-style:normal;">                               
Bem Vindo!                                                                 
</span>                                                                    
</b>                                                                       
<hr>                                                                       
<br>                                                                       
<b>Por favor, para acessar a internet clique em continuar.</b>             
<br>                                                                       
<br>                                                                       
<hr>                                                                       

<form method='get' action='$authaction' target='_blank'>                   
<input type='hidden' name='tok' value='$tok'>                              
<input type='hidden' name='redir' value='http://webapp.funz.com.br'>

<input type='submit' value='Continue'>                                     

</form>                                                                    

<hr>Copyright (C) 2004-2016.  This software is released under the GNU GPL l

</body>                                                                    
</html>   

       `

但真正的问题是当我在移动设备上单击提交表单(见下文)并且登录“弹出窗口”立即关闭并且我没有重定向到设置 URL,但是当我在 android 设备上使用浏览器时很好地重定向到设置 URL。

<form method='get' action='$authaction' target='_blank'>                   
<input type='hidden' name='tok' value='$tok'>                              
<input type='hidden' name='redir' value="http://webapp.funz.com.br">

<input type='submit' value='Continue'>                                     

</form>

有人想通过在移动设备上使用 nodogsplash 强制门户重定向到 URL 来解决此问题。谢谢 直到现在。

4

1 回答 1

0

这是 android 强制网络助手的默认行为。它的功能非常具体,其中一个功能是,当它最终检测到它已连接到互联网时,它会立即自行关闭。不过,它不会发生在 iOS 设备和较旧的 android 上。

您可能想尝试使用 ajax 发送表单并手动重定向,这样我认为我已经实现了更长的页面保留时间,但我现在不确定为什么我放弃了这个解决方案。可能是因为其他设备上的一些不当行为。

于 2019-03-28T15:08:14.000 回答