php – 如何通过编写URL阻止用户直接访问我的html页面?

我想要一个没有数据库的硬编码登录页面(login.html).
如果一个人写了正确的用户名和密码,它会重定向到(page2.html).

现在我的问题是,如果一个人直接为page2.html写入URL,他将能够访问它,而无需任何登录.

理想情况=> www.example.com/login.html =>如果正确=> www.example.com/page2.html

问题案例=> www.example.com/page2.html => page2.html,没有登录:(

解决方法:

你可以用这样的php会话来控制所有这些

  //set the session on the login page
   $_SESSION['loggedIn'] = true;  

 //on the second page you check if that session is true, else redirect to the login page  
  if($_SESSION['loggedIn'])
      //allow
  else
      //redirect to the login page
      header('Location: /login.html');  

session是一种存储要在多个页面中使用的信息(在变量中)的方法.默认情况下,会话变量会持续到用户关闭浏览器为止.

为简单起见,您可以将页面更改为php(例如login.php).

>第1行:在您的login.php页面中,您将首先检查用户名和密码是否正确,如果是,请设置$_SESSION [‘loggedIn’] = true
>第2行:在第二页(page2.php)中,您将首先通过检查会话是否具有值if($_ SESSION [‘loggedIn’]){//允许处理}来检查用户是否已登录
>第3行:如果该会话变量为空,则表示用户未登录,将其重定向到登录页面,否则为{header(‘Location:/login.php’);}

上一篇:Mac OS X Python GUI管理员提示


下一篇:java – 基于输入参数标准的Spring安全性authrorize