Cum se folosește Referer HTTP

Lucruri pe care le puteți face cu procesul referer

Informațiile pe care le vedeți scrise pe site-uri web sunt doar o parte din datele pe care le transmit aceste site-uri în timp ce călătoresc de la un server web la un browser al unei persoane și invers. Există, de asemenea, o cantitate echitabilă de transfer de date care se întâmplă în spatele scenei - și dacă știți cum să accesați aceste date, este posibil să o utilizați în moduri interesante și utile! În acest articol vom analiza o anumită piesă de date care este transferată în timpul acestui proces - referitor la HTTP.

Ce este Refererul HTTP?

Refererul HTTP este date care sunt transmise de browserele web către server pentru a vă spune în ce pagină a fost cititorul înainte de a ajunge la această pagină. Aceste informații pot fi utilizate pe site-ul dvs. pentru a oferi ajutor suplimentar, pentru a crea oferte speciale utilizatorilor vizați, pentru a redirecționa clienții către pagini și conținut relevante sau chiar pentru a bloca vizitatorii de la accesarea site-ului dvs. De asemenea, puteți utiliza limbi de scripting, cum ar fi JavaScript, PHP sau ASP, pentru a citi și a evalua informațiile de referință.

Colectarea informațiilor despre Referer cu PHP, JavaScript și ASP

Deci, cum colectezi aceste date despre HTTP? Iată câteva metode pe care le puteți utiliza:

PHP stochează informațiile despre referer într-o variabilă sistem numită HTTP_REFERER. Pentru a afișa referer-ul pe o pagină PHP puteți scrie:

dacă {isset ($ _ SERVER ['HTTP_REFERER'])) {
echo $ _SERVER ['HTTP_REFERER'];
}

Aceasta verifică dacă variabila are o valoare și apoi o imprimă pe ecran. În loc de ecoul $ _SERVER ['HTTP_REFERER']; ați pune linii de script pentru a verifica diferiți referenți.

JavaScript foloseste DOM pentru a citi referenterul. La fel ca în PHP, ar trebui să verificați dacă referer are o valoare. Cu toate acestea, dacă doriți să manipulați acea valoare, trebuie să o setați mai întâi la o variabilă. Mai jos este modul în care ar afișa referer-ul la pagina dvs. cu JavaScript. Rețineți că DOM utilizează ortografia alternativă a referrerului, adăugând un extra "r" acolo:

dacă (document.referrer) {
var myReferer = document.referrer;
document.write (myReferer);
}

Apoi puteți folosi referenterul în scripturi cu variabila myReferer .

ASP, ca și PHP, stabilește refererul într-o variabilă de sistem. Puteți apoi să colectați aceste informații astfel:

dacă (Request.ServerVariables ("HTTP_REFERER")) {
Dim myReferer = Request.ServerVariables ("HTTP_REFERER")
Response.Write (myReferer)
}

Puteți utiliza variabila myReferer pentru a ajusta scripturile după cum este necesar.

Odată ce ai referentul, ce poți să faci cu el?

Așadar, obținerea datelor este pasul 1. Modul în care faceți acest lucru depinde de site-ul dvs. specific. Următorul pas, desigur, constă în găsirea unor modalități de utilizare a acestor informații.

Odată ce aveți datele refererarului, îl puteți folosi pentru a scripta site-urile dvs. în mai multe moduri. Un lucru simplu pe care îl puteți face este să postați de unde credeți că a venit un vizitator. Desigur, este destul de plictisitor, dar dacă aveți nevoie de câteva teste, acesta ar putea fi un bun punct de intrare pentru a lucra.

Ce este un exemplu mai interesant este atunci când folosiți refererătorul pentru a afișa informații diferite în funcție de locul în care provin. De exemplu, puteți face următoarele:

Blocați utilizatorii cu .htaccess de către Referer

Din punctul de vedere al securității, dacă întâmpinați o mulțime de spam-uri pe site-ul dvs. de pe un anumit domeniu, acesta poate ajuta pur și simplu să blocheze acest domeniu de pe site-ul dvs. Dacă utilizați Apache cu mod_rewrite instalat, le puteți bloca cu câteva rânduri. Adăugați următoarele în fișierul .htaccess :

RewriteEngine pe
# Opțiuni + FollowSymlinks
RewriteCond% {HTTP_REFERER} spammer \ .com [NC]
RewriteRule. * - [F]

Nu uitați să schimbați cuvântul spammer \ .com în domeniul pe care doriți să îl blocați. Amintiți-vă să puneți \ în fața oricărei perioade din domeniu.

Nu se bazează pe Referer

Amintiți-vă că este posibil să răsfoiți refererătorul, deci nu ar trebui folosiți niciodată refererul pentru siguranță. Puteți să-l utilizați ca un add-on pentru cealaltă securitate, dar dacă o pagină trebuie accesată numai de anumite persoane, atunci ar trebui să setați o parolă pe ea cu htaccess .