29. marts 2006 - 14:20Der er
5 kommentarer og 1 løsning
Kan PHP overskrive en .htaccess-nægtet?
Hej eksperter
Jeg har et problem, som jeg ikke kan finde svar på i forvejen, derfor denne post.
Problembeskrivelse: Jeg har en root-mappe, hvor der ligger en index.php og en mappe ved navn "protected". I protected-mappen ligger en swf-fil ved navn bilspil.swf. Jeg vil gerne forhindre uvedkommende i at kunne få fingre i bilspillet, så derfor har jeg i protected-mappen lagt en .htaccess fil. Så langt, så godt.
Bilspil.swf er embedded i index.php i root-mappen, som er frit tilgængelig. I index.php har jeg et skjult login-tjek (der logges ind et helt andet sted), og hvis login er OK (tjekkes på session-variable), så vil jeg gerne kunne vise brugeren det embeddede bilspil, UDEN at brugeren får poppet en auth-user-boks op.
Derfor har jeg prøvet at overskrive auth-variablerne på følgende måde: $_SERVER['PHP_AUTH_USER'] = "login"; $_SERVER['PHP_AUTH_PW'] = "krypteret_password"; Og så håbet, at auth-user-boksen ikke ville poppe op... Men det gør den :o( Problemet er jo også, at forespørgslen på swf-filen kommer fra klientens browser (eksternt), ikke fra PHP (internt på serveren)...
Altså: Er der nogen måde, hvorpå jeg (med PHP) kan forhindre denne auth-user-boks i at poppe op i hovedet på den stakkels bruger, der allerede har logget ind én gang?
if ( isset( $_SESSION['er_logget_ind'] ) ) { header( "Content-Type: application/x-shockwave-flash" ); readfile( "protected/bilspil.swf" ); exit; } echo "Du skal være logget ind for at se spillet";
tak for input, coderdk, det ville virke i første omgang. Men problemet er, at få minutter senere vil brugeren klikke på et eller andet, som gør, at der skal loades en ny swf ind i den eksisterende swf (et nyt indhold i gammel "ramme") - og så sker det ikke via en php-fil, men direkte fra flash -> server...
har siden fundet af, at det kan gøres med noget mod_rewrite på apache hvis man har adgang til det. Så lader man htaccess-filen redirecte alle forespørgsler til en PHP-fil, der så kan køre login-tjek med mere, inden den - som coderdk foreslog - ved hjælp af header, readfile etc sender indholdet af den forespurgte (eller udskiftede) fil tlbage til klienten...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.