Descriere: Redirectari
Download:
Autor: Anonim
Sursa (Link-ul oficial): Propria parere: Folositor.
Tutorialul:
În web development avem nevoie de redirectări în diferite situații. De obicei redirectările sunt utilizate pentru a nu lăsa userul cu ochii-n soare când dă click pe un link către o pagină care s-a mutat, când developerul face un URL scurt pentru a evita un URL foarte lung, când tentativa de login este eșuată, când este detectată o metodă de atac etc.
Redirectările au multe utilizări și fiecare are plusurile și minusurile ei. Vine împreună cu un mesaj din partea serverului, un cod de eroare care ne spune ce fel de redirectare e. De exemplu, dacă serverul ne trimite codul 301 browserul/crawlerul știe că acea redirectare este permanentă. Dacă se trimite codul 302, atunci browserul/crawlerul știe că e o redirectare provizorie. Codurile transmise de server pot fi văzute cu un plug-in pentru browser de tipul “Live HTTP Headers” și pot fi văzute doar în cazul în care redirectarea e făcută de server sau de o pagină de pe server.
OK, probabil vă interesează mai mult modul în care se poate redirecta decât pălăvrăgeala așa că înșir redirectările clasice pe care le puteți găsi în viața de zi cu zi:
1. Redirectare din HTML cu instrucțiunile META
Prin HTML putem iniția o redirectare cu ajutorul instrucțiunii META. În pagină, imediat după instrucțiunea adăugăm o instrucțiune meta de forma:
Cod: Selectaţi tot
<meta http-equiv=”refresh” content=”0,http://www.skullbox.info/” />
2. Redirectare prin JavaScript
Prin JavaScript putem face o redirectare folosind codul următor oriunde în pagină:
Cod: Selectaţi tot
<script language=”javascript”>
self.location=”http://www.skullbox.info/”;
</script>
3. Redirectare prin PHP
Ca să facem redirectare în PHP trebuie să punem codul chiar la începutul paginii, să nu se transmită nici un fel de informații înainte de redirectare. Pentru redirectare trimitem 2 headere. Primul spune browserului că pagina s-a mutat permanent (301) iar al doilea header trimis dă noua locație. Treaba merge cam așa:
Cod: Selectaţi tot
< ?php
header(”HTTP/1.1 301 Moved Permanently”);
header(”Location: http://www.skullbox.info/”);
exit();
?>
Pentru cei care preferă ASP în loc de PHP se face cam aceeași treabă dar într-un mod mai simplu. În ASP există o singură funcție pentru redirectare, nu trebuie trimise headere browserului. Redirectarea se face așa:
Cod: Selectaţi tot
< % Response.Redirect “http://www.skullbox.info/” %>
Dacă nu vreți să depindeți de vreo pagină de pe server sau de vreun limbaj de programare/scripting puteți modifica fișierul .htaccess din contul vostru pentru redirectare. Prin .htaccess redirectarea se poate face in două feluri:
5.1 Cu ajutorul funcției Redirect
Cod: Selectaţi tot
Redirect 301 /test.php http://www.skullbox.info
5.2 Cu ajutorul mod_rewrite
Cu mod_rewrite trebuie o linie în plus pentru pornirea engine-ului de redirectare. Codul arată cam așa:
Cod: Selectaţi tot
RewriteRule ^test.php$ http://www.skullbox.info/ [R=301,L]