Jump to content
Sign in to follow this  
gaby

Tipuri De Redirectionari !

Recommended Posts

In web development avem nevoie de redirectionari in diferite situatii. De obicei redirectionarile sunt utilizate pentru a nu lasa userul cu ochii-n soare cand da click pe un link catre o pagina care s-a mutat, cand developerul face un URL scurt pentru a evita un URL foarte lung, cand tentativa de login este esuata, cand este detectata o metoda de atac etc.

Redirectionarile au multe utilizari si fiecare are plusurile si minusurile ei. Vine impreuna cu un mesaj din partea serverului, un cod de eroare care ne spune ce fel de redirectionare e. De exemplu, daca serverul ne trimite codul 301 browserul/crawlerul stie ca acea redirectionare este permanenta. Daca se trimite codul 302, atunci browserul/crawlerul stie ca e o redirectionare provizorie. Codurile transmise de server pot fi vazute cu un plug-in pentru browser de tipul "Live HTTP Headers" si pot fi vazute doar in cazul in care redirectionarea e facuta de server sau de o pagina de pe server.

Ok, acum voi incepe sa insir redirectionarile clasice cele mai folosite:

1. Redirectionare din HTML cu instructiunile META

Prin HTML putem initia o redirectare cu ajutorul instructiunii META. In pagina, imediat dupa tag-ul <HEAD> adaugam o instructiune meta de forma:

<meta http-equiv="refresh" content="0; http://pctroubleshooting.ro"/>
Cand utilizatorul incarca pagina browserul citeste instructiunea meta care ii spune sa se faca un refresh la 0 secunde (adica instant) iar dupa refresh sa incarce pagina http://pctroubleshooting.ro .Daca doriti ca vizitatorul sa fie redirectionat in cateva secunde dupa intrarea pe site inlocuiti 0 cu o alta cifra (care va insemna numarul de secunde inainte de redirectionare). 2. Redirectionare prin JavaScript Prin JavaScript putem face o redirectare folosind codul urmator oriunde in pagina:
<script language="javascript">
self.location="http://pctroubleshooting.ro";
</script>[/code] [b]Redirectionare cu alerta:[/b]
[code]<script>
alert("Aceasta pagina a fost mutata... click OK pentru a va redirectiona");
location = "http://noua_adresa_a_site-ului";
</script>
Redirectionare cu confirmare:
<script>
if(confirm("Aceasta pagina a fost mutata... ati vrea sa fiti redirectionati ?"))
{
location = "http://noua_adresa_a_site-ului";
}
else
{
history.back();
}
</script>[/code] Observatie: Codul se poate pune oriunde in pagina dar e de preferat sa fie in sectiunea HEAD. [b]3.[/b] [color=purple][b]Redirectionare prin PHP[/b][/color] Ca sa facem o redirectionare in PHP trebuie sa punem codul chiar la inceputul paginii, sa nu se transmita nici un fel de informatii inainte de redirectionare. Pentru redirectionare trimitem 2 headere. Primul spune browserului ca pagina s-a mutat permanent (301) iar al doilea header trimis da noua locatie. Treaba merge cam asa:
[code]<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://pctroubleshooting.ro");
exit();
?>
4. Redirectionare prin ASP Pentru cei care prefera ASP in loc de PHP se face cam aceeasi treaba dar intr-un mod ceva mai simplu. In ASP exista o singura functie pentru redirectionare, nu trebuie trimise headere browserului. Redirectionarea se face asa:
>%
Response.Redirect "http://pctroubleshooting.ro"
%<[/code] [b]5.[/b] [color=orange][b]Redirectionare prin .htaccess[/b][/color] Daca nu vreti sa depindeti de vreo pagina de pe server sau de vreun limbaj de programare/scripting puteti modifica fisierul [b].htaccess[/b] din contul dumneavoastra pentru redirectionare. Prin [b].htaccess[/b] redirectionarea se poate face in doua feluri: a) Cu ajutorul functiei Redirect:
[code]Redirect 301 /test.php http://pctroubleshooting.ro
test.php este fisierul la apelarea caruia se face redirectionarea. b) Cu ajutorul mod_rewrite Cu mod_rewrite trebuie o linie in plus pentru pornirea engine-ului de redirectionare. Codul arata cam asa:
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://pctroubleshooting.ro/$1 [R=301,L][/code]

Avantajul folosirii variantei b) este ca putem pune diferite conditii cu RewriteCond pentru a verifica browserul, IP-ul sau alte detalii ale vizitatorului.

Share this post


Link to post
Share on other sites

nu, cu ultimul cod faci o redirectionare totala, in cazul explicat de pe www.pctroubleshooting.ro spre http://pctroubleshooting.ro ,adica fara www, pentru a nu se considera duplicate content pentru google.

daca vrei sa banezi ip-ul cuiva din htaccess, citeste aici: http://pctroubleshooting.ro/index.php?act=...=92&t=2732&st=0

succes :-h

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×