我正在为某些用户设置一个网页来托管文件。 现在,如果您转到目录blah/folder,您将看到apaches默认文件夹视图。 此文件夹视图是理想的,但是我想防止人们直接转到服务器目录中的文件夹。
现在我有一个启动会话的登录页面,如果用户正确登录,则会将他们定向到他们的顶级目录并设置会话变量。
我想有一种方法,每当有人尝试访问我服务器上的文件或文件夹时,它都会检查此变量,如果不存在,它会将他们定向回登录页面,如果存在,则向他们显示默认文件夹视图。
我想我可以使用 .htaccess 重定向到检查会话状态的 php 文件,但我不知道如何防止它在循环中运行。
假设您有一个成员页面,您希望仅在用户登录时访问,以及一个任何人都可以访问的登录页面。
您可以使用 $_SESSION[ ] 来执行此操作
创建两个文件中都包含的页眉页并使用 session_start()
登录页面应如下所示
<?php
require_once 'header.php';
if(isset($_POST['user']&&$_POST['pass'])
{
//validate the values and check if user login credentials are right
$_SESSION['loggedin']='true';
}
?>
成员页面应该有这样的内容
<?php
require_once 'header.php';
if($_SESSION['loggedin']=='true')
{
echo'you can access this page member';
}
else{
echo'Sending you back Mr';
header('Location: http://somesite.com/login.php');
}
?>