Autor Zpráva
blaaablaaa
Profil
Ahoj,

rad bych si pristup do administrace drupalu "pojistil" jeste http autentizaci.
Jenomze administrace je rewritovana z /admin/xxx. Jak v htaccess nastavit, pro ktery (neexistujici) adresar se ma autentizace pouzit?
Pouzit <Directory "XXX"> nemuzu, protoze adresar neexistuje.

Diky
blaaablaaa
Profil
Nakonec jsem vyresil pres php:
do index.php staci na zacetek pridat:
function http_notlogged(){
       header('WWW-Authenticate: Basic realm="Zadejte sve prihlasovaci udaje"');
       header('HTTP/1.0 401 Unauthorized');
       echo "Not logged";
       exit;
}

function http_isLogged( $name, $pwd ) {
   $read = file(".htpasswd");
   foreach ( $read as $line ) {
      $match = explode(":", $line);
      if ( count($match)==2 && $match[0]==$name && $match[1]==crypt($pwd, base64_encode($pwd)))
         return true;   
   }
   return false;
}

if ( isset($_GET["q"]) && ((strlen($_GET["q"]) >= 5  && substr($_GET["q"], 0, 5)=="admin") || (strlen($_GET["q"]) >= 4  && substr($_GET["q"], 0, 4)=="user")) ) {
   if ( !isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW']) || !http_isLogged($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'] ) ) {
      http_notlogged();
      exit;
   }
} 

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0