有一种方法可以使用php将用户名和密码发送到受.htaccess / htpasswd保护的目录吗?而不是必须在可怕的弹出窗口中输入用户名和密码?
我有一个登录页“在外面”受htaccess / htpasswd保护的区域,并希望访问受htaccess / htpasswd保护的文件“inside”目录通过在我的PHP脚本中输入用户名和密码,而不是输入我尝试访问受保护区域时出现的弹出窗口。
有没有办法用php和htaccess来做到这一点?
答案 0 :(得分:1)
要扩展我的评论,请考虑以下PHP
脚本,该脚本会读取受保护的文件,并在提供正确的密码foobar
时将其提供给用户。
请注意,如果您的连接未超过SSL
,则您将以明文形式发送密码。
<?php
$pass = $_POST['pass'];
$filename = "MyFoo.txt";
$file = "path/to/protected/directory/$filename";
if($pass == "foobar")
{
header('Content-type: application/octet-stream');
header("Content-Disposition: attachment; filename=\"$filename\"");
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
}
if(isset($_POST))
{?>
<form method="POST" action="">
Password <input type="password" name="pass"></input>
<input type="submit" name="submit" value="Get File" ></input>
</form>
<?}
?>