1

我一直在搞乱并尝试创建一个带有登录页面的 HTML 网站。问题是,你可以通过输入 (domain)/page.html 绕过登录页面,所以我尝试使用这个 javascript 脚本。

<script>
var x = document.referrer;    

if (x == "(domain)") {
    console.log(x);
} else {
    window.location.href = "/";
};
</script>

将其添加到我的代码后,我遇到了另一个问题。我浏览登录页面并点击提交。它像它应该的那样将我重定向到 page.html,但随后它立即将我重定向回登录页面。有人可以帮忙吗?

4

1 回答 1

0

在客户端,很容易弄乱您的代码。您应该研究如何在服务器端执行身份验证。

如果您使用 PHP 作为后端,那么在 login.php 文件中,您应该按如下方式执行

//after login verified
//You have to learn how to make a verification token
setcookie("remember",$ver_token,time()+45345345 ,"/",true,);
header("Location: http://www. (domain)/page.php/");

// some additional menipulation if you want

在 page.php 文件中,您将获得 cookie,否则将重定向到 login.php 文件

// On the top of the login.php file 
if (isset($_COOKIE['remember'])) {
// Check in the database and do other stuff
}
else{
header("Location: http://www. (domain)/login.php/");
}

我的建议是先学习一些后端编程知识,然后尝试登录,因为黑客或攻击者可能很容易查看 page.html 文件,因为服务器端没有验证。客户端可以非常非常容易地操作。

于 2021-11-02T00:36:03.503 回答