通常这是通过服务器端脚本和数据库来完成的。无法使用Javascript,因为无论您对代码进行多少混淆,任何人都可以右键单击“查看源代码”来找出您的密码。我看到你标记了 php。在php中,它相当简单。设置一个带有用户名和密码框的 HTML 表单(通过 POST,而不是 GET!,否则密码将显示在浏览历史记录和 url 栏中)。示例表单如下所示:
<html>
<body>
<form action="login.php" method="post">
Enter your username: <input type="text" name="user" /> <br />
Enter your password: <input type="text" name="pass" /> <br />
<input type="submit" value="Login" />
</form>
</body>
</html>
然后在login.php中:
<?php
session_start();
$db = mysqli_connect("server","db_user","db_pass","database_name");
$stmt = $db -> prepare("SELECT pass FROM users WHERE username=?");
$stmt -> bind_param("s",$_POST['user']);
$stmt -> execute();
$stmt -> bind_result($result);
if ($_POST['pass']==$result)
{
$_SESSION['auth'] = "yes";
header("Location: index.php");
}
else
{
die("Authentication rejected!");
}
?>
那么您需要做的就是将以下代码放在您想要“密码保护”的所有文件的开头:
<?php
session_start();
if (isset($_SESSION['auth']))
{
if ($_SESSION['auth']!="yes")
{
header("Location: login.php");
}
}
else
{
header("Location: login.php");
}
?>
这假设您有一个 MySQL 数据库(免费且易于安装),其中包含一个名为 users 的表,其中至少包含一个用户列和一个密码列。很容易找出这段代码,而且这绝对不是唯一的方法!但是,这是一种不错的方式,因为它包含输入卫生等基本必需品(您可以在其他地方阅读)。
祝你好运!这确实是一个巨大的问题,在计算机安全中极为重要。事实上,这是一个十亿美元的问题:“我如何让好人进来,而把坏人拒之门外?”