Indlela yokusebenzisa i-Referer ye-HTTP

Izinto ongazenza ngenqubo yokucubungula

Ukwaziswa obona okulotshwe kumawebhusayithi kuphela ingxenye yedatha lawo masayithi adlulisa njengoba ehamba esuka kuseva yewebhu kwisiphequluli somuntu futhi ngokuphambene nalokho. Kukhona nesamba esilungile sokudluliswa kwedatha okwenzeka ngemuva kwezigcawu - futhi uma ukwazi ukufinyelela leyo datha, ungakwazi ukuyisebenzisa ngezindlela ezithakazelisayo nezisebenzayo! Kulesi sihloko sizobuka ingxenye eyodwa yedatha edluliswa phakathi nale nqubo - umfaki we-HTTP.

Iyini Referer ye-HTTP?

Umculi we- HTTP yidatha edluliselwa iziphequluli zewebhu kwisiphakeli ukukutshela ukuthi yiliphi ikhasi umfundi obekulo ngaphambi kokuba bafike kuleli khasi. Lolu lwazi lungasetshenziswa kuwebhusayithi yakho ukuze unikeze usizo olwengeziwe, ukudala okunikezwayo kubasebenzisi abathintekayo, ukuqondisa kabusha amakhasimende kumakhasi afanele nokuqukethwe, noma ngisho nokuvimbela izivakashi ukuba zingene kusayithi lakho. Ungasebenzisa futhi izilimi zokubhala njengeJavaScript, PHP, noma i-ASP ukuze ufunde futhi uhlole ulwazi lokudlulisela.

Ukuqoqa ulwazi lwe-Referer Nge-PHP, i-JavaScript ne-ASP

Ngakho uqoqa kanjani le datha ye-HTTP referer? Nazi ezinye izindlela ongazisebenzisa:

I-PHP ithengisa ulwazi lwe-referer kuhlukahluka kohlelo olubizwa nge-HTTP_REFERER. Ukuze ubonise i-referer ekhasini le-PHP ungabhala:

uma (isset ($ _ SERVER ['HTTP_REFERER'])) {
hamba $ _SERVER ['HTTP_REFERER'];
}}

Lokhu kuhlola ukuthi ukuguquguquka kunenani bese ulitshela esikrinini. Esikhundleni se- echo $ _SERVER ['HTTP_REFERER']; ungabeka imigqa yeskripthi endaweni ukuze uhlole ababhekisi abahlukahlukene.

I-JavaScript isebenzisa i-DOM ukufunda i-referer. Njengokuthi nge-PHP, kufanele uhlole ukuze uqiniseke ukuthi ummeleli unenani. Kodwa-ke, uma ufuna ukuphatha lelo xabiso, kufanele ulibeke ekuguqukeni kokuqala. Ngezansi ungayibonisa kanjani ummeleli wekhasi lakho ngeJavaScript. Qaphela ukuthi i-DOM isebenzisa isipelingi esithile sokudlulisela phambili, enezela i- "r" eyengeziwe lapho:

uma (document.referrer) {
var myReferer = document.referrer;
umbhalo.write (myReferer);
}}

Khona-ke ungasebenzisa i-referer ngezikripthi nge- myReferer eguquguqukayo.

I-ASP, njenge-PHP, ibeka umfaki we-referer esimeni sezinhlelo. Ungakwazi ukuqoqa lolo lwazi:

uma (Isicelo.ServerVariables ("HTTP_REFERER")) {
Nciphisa i-MyReferer = Isicelo.IziNsiza zeVerver ("HTTP_REFERER")
I-Response.Write (myReferer)
}}

Ungasebenzisa i- myReferer eguquguqukayo ukulungisa izikripthi zakho uma kudingeka.

Uma Une-Referer, Yini Ongayenza Ngayo?

Ngakho ukuthola idatha isinyathelo 1. Indlela ozoyenza ngayo kuyoxhomeka kusayithi lakho eliqondile. Isinyathelo esilandelayo, yebo, sithola izindlela zokusebenzisa lolu lwazi.

Uma unayo idatha ye-referer, ungayisebenzisa ukuze ubhale amasayithi akho ngezindlela eziningi. Into elula ongayenza ukuthumela nje lapho ucabanga ukuthi isivakashi sivela khona. Kuyavunywa, lokho kumnandi kakhulu, kodwa uma udinga ukuhlola ezinye izivivinyo, lokho kungaba yindawo enhle yokungena ukusebenza nayo.

Isiphi isibonelo esithakazelisayo kakhulu uma usebenzisa i-referer ukubonisa ulwazi oluhlukile kuye ngokuthi bavelaphi. Isibonelo, ungenza lokhu okulandelayo:

Vimbela Abasebenzisi nge-.htaccess ngu-Referer

Kusuka kokubheka kokuphepha, uma uhlangabezana nogaxekile ogaxekile ku-site yakho kusuka kusizinda esithile, kungasiza ukuvimba nje lesi sizinda kusuka kusayithi lakho. Uma usebenzisa i-Apache nge-mod_rewrite efakiwe, ungawavimbela ngemigqa embalwa. Engeza okulandelayo kufayela lakho le-.htaccess :

Phinda ubhaleEngeza ku
Izinketho # + Landela amaSymlinks
I-RewriteCond% {HTTP_REFERER} i- spammer \ .com [NC]
Phinda ubhale kabusha. * - [F]

Khumbula ukushintsha igama elithi spammer \ .com kwisizinda ofuna ukuzivimba. Khumbula ukubeka i- "ngaphambi kwanoma iziphi izikhathi esizindeni.

Ungathembeki ku-Referer

Khumbula ukuthi kungenzeka ukuthi ungayinaki i-referer, ngakho-ke akufanele neze usebenzise i-referer yedwa yokuphepha. Ungayisebenzisa njenge-add-on kokunye ukuphepha, kodwa uma ikhasi kufanele lifinyeleleke kuphela ngabantu abathile, kufanele usethe iphasiwedi kuyo nge- htaccess .