Uma abordagem possível...
Digamos que você queira proteger o diretório "protegido".
Usando
.htaccess
, limite todo o acesso a este diretório colocando Options -Indexes
# Block External Access
deny from all
no
.htaccess
arquivo dentro do diretório "protegido". Em seguida, use um RewriteRule para capturar todas as URLs que vão para o diretório "protegido" em seu
.htaccess
principal Arquivo. Por exemplo:RewriteEngine on
RewriteRule ^protected/(.*) accessprotected.php?url=$1
Normalmente, o RewriteRule deve pegar todas as URLs que vão para o diretório "protegido" e transmiti-las para a página accessprotected.php.
Na página accessprotected.php, verifique o status de login.
if (isset($_SESSION['LoggedIn'])) { // or something like this
/*
Here, you should check what file type is being
requested and handle this properly.
*/
} else {
// put code for login form here
}