


So erhalten Sie mit PHP einen Referrer und ermitteln die Quelle, um illegalen Zugriff zu verhindern
In diesem Artikel erfahren Sie, wie Sie mit PHP den Referrer abrufen, die Quelle ermitteln und illegalen Zugriff verhindern können. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
Der PHP-Code der Download-Seite down.php Jetzt habe ich festgestellt, dass die Download-Datei ausgegeben werden kann, wenn ich sie direkt mit Thunder oder Google Chrome öffne, und sie hat überhaupt keine Anti-Leeching-Wirkung. Jetzt möchte ich zulassen, dass nur diejenigen, die mit meiner eigenen Site verbunden sind, diese direkt verwenden. Diejenigen, die mit anderen Sites verbunden sind, und diejenigen, die diese Adresse direkt eingeben, werden zur Seite copy.htm weitergeleitet.
Die in PHP vordefinierte Servervariable $_SERVER["HTTP_REFERER"] kann die Quelle ermitteln.
$_SESSION['HTTP_REFERER'] kann die Quelladresse der vorherigen Verbindung des aktuellen Links abrufen, dh die URL-Adresse der vorherigen Seite, die mit der aktuellen Seite verknüpft ist.
Es wird im Allgemeinen verwendet, um festzustellen, wo der Betrachter auf den Link geklickt hat, um zu dieser Seite zu springen, also den sogenannten Ursprung. Es kann auch verwendet werden, um Hotlinking zu verhindern, indem der Ursprung ermittelt wird.
Zum Beispiel:
<?php $url_array = parse_url($_SESSION['HTTP_REFERER']); //如果页面的域名不是服务器域名,就连接到登陆窗口 if($_SERVER['HTTP_HOST'] != $url_array["host"]) { header("location: login.php"); exit; } ?>
Ein aktuelles Projekt muss verhindern, dass Benutzer illegal auf eine JSON-Seite zugreifen. Die grundlegende Lösung besteht darin, die Quelle zu bestimmen, um den Nicht-Aufruf-Zugriff einzuschränken:
$_SERVER[‘HTTP_REFERER’]:来路链接,可能带尾巴(如: 可以通过php内置函数parse_url()来获取到当前网址(www.httple.net),即: $refererUrl = parse_url($_SERVER[‘HTTP_REFERER’]); $host = $refererUrl[‘host’]; $host的值即为来路的网址(www.httple.net)。 获取到了来路的网址之后,我们就可以通过这个网址来限制访问该页面的权限了。代码如下: if(!isset($_SERVER[‘HTTP_REFERER’]) || $referurl[‘host’] !=”www.httple.net”) { header(“location: /”); //如果没有来路,或者来路不是本站,跳转到首页。 exit; }
Fügen Sie diese Codezeile oben ein JSON-Datenseite kann dieses Problem leicht gelöst werden.
Der Fehler dieser Verarbeitungsmethode: Die normalen Daten der Seite können durch Fälschung der Quelle erhalten werden.
Zugehöriger Code
Die Methode zum Abrufen der Quell-URL verwendet hauptsächlich die Funktion HTTP_REFERER in der Servervariablen. Der Code wird veröffentlicht:
function get_referer(){ $url = $_SERVER["HTTP_REFERER"]; //获取完整的来路URL $str = str_replace("http://","",$url); //去掉http:// $strdomain = explode("/",$str); // 以“/”分开成数组 $domain = $strdomain[0]; //取第一个“/”以前的字符 return $domain; } //对于百度、谷歌搜索引擎来路判断 function get_seo(){ $s = 0; if(strstr(get_referer(),'baidu.com')){ $s = 1; } else if(strstr(get_referer(),'google.com.hk')){ $s = 1; } return $se; }
php-Website Die Methode zum Abrufen der Quell-URL verwendet hauptsächlich die Verwendung von HTTP_REFERER Funktion in die Servervariable, der Code wird eingefügt:
function get_referer(){ $url = $_SERVER["HTTP_REFERER"]; //获取完整的来路URL $str = str_replace(“http://”,””,$url); //去掉http:// $strdomain = explode(“/”,$str); // 以“/”分开成数组 $domain = $strdomain[0]; //取第一个“/”以前的字符 return $domain; } //对于百度、谷歌搜索引擎来路判断 function get_seo(){ $s = 0; if(strstr(get_referer(),’baidu.com’)){ $s = 1; } else if(strstr(get_referer(),’google.com.hk’)){ $s = 1; } return $se; }
Bei der Verarbeitung eines Formulars müssen wir die Möglichkeit einer statischen Übermittlung durch den Benutzer berücksichtigen. Discuz wurde anhand von Formhash beurteilt.
Hier verwende ich einen anderen Möglichkeit, die Beurteilungsseite zu verarbeiten. Natürlich kann diese Methode auch verwendet werden, um den Ursprung von HTTP_REFERER zu fälschen.
Der zweite Teil besteht darin, das Problem zu lösen, dass header('location: ) in PHP HTTP_REFERER auf der nächsten Seite nicht abrufen kann Nachdem Sie zur Seite gesprungen sind, können Sie der Seite nur einen Link hinzufügen und dann mit js das Klicken auf den Link simulieren, sodass die nächste Seite auf jeden Fall HTTP_REFERER Schlüsselwort erhält: document.getElementById('gourl').click( );
Empfohlenes Lernen: php-Video-Tutorial
Das obige ist der detaillierte Inhalt vonSo erhalten Sie mit PHP einen Referrer und ermitteln die Quelle, um illegalen Zugriff zu verhindern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

PHPSSIONS CANSTORESTRINGEN, ZUGNALTEN, ARRAYS, ANDOBjekte.1.

TostartaphpSession, useSession_start () atthescript'Sbeginning.1) PlaCEITBEFOREANYOUTPUTTOTHESESSIONSCOOKIE.2) useSsionsforuserDatalikeloginStatusOrShopingCarts

Die Sitzung der Sitzung bezieht sich auf die Generierung einer neuen Sitzungs -ID und die Ungültigmachung der alten ID, wenn der Benutzer sensible Vorgänge bei festgelegten Sitzungsangriffen ausführt. Die Implementierungsschritte umfassen: 1. Erkennen sensibler Vorgänge, 2. Erstellen neuer Sitzungs-ID, 3..

PHP -Sitzungen haben erhebliche Auswirkungen auf die Anwendungsleistung. Zu den Optimierungsmethoden gehören: 1. Verwenden Sie eine Datenbank, um Sitzungsdaten zu speichern, um die Antwortgeschwindigkeit zu verbessern; 2. Reduzieren Sie die Verwendung von Sitzungsdaten und speichern Sie nur die erforderlichen Informationen. 3.. Verwenden Sie einen nicht blockierenden Sitzungsprozessor, um die Parallelitätsfunktionen zu verbessern. 4. Passen Sie die Ablaufzeit der Sitzung an, um Benutzererfahrung und Serverbelastung auszugleichen. 5. Verwenden Sie persistente Sitzungen, um die Anzahl der Les- und Schreibzeiten zu verringern.

PhpSessionsaresServer-Side, whilecookiesareclient-Side.1) SESSIsions Storedataontheserver, Aremoresecure und Handlelargerdata.2) CookieStoredataoneTheClient, AslosenSecure und LimitedInsiesindaSsibilitäts- und -Stasibilitäts- und -Stasibilitäts- und -Anssibilitäts- und -Anssibilitätsporsedataandcookiesefornonsesibel, adailliertes, adailliertes, adailliertes, adailliertes, adailliertes, addiertes-addiertes- und -Staillieren- und -Anssistieren, und -Anssibilitätsporsedaten- und -Sta- und addierta und -Anssibilitäts- und addiertes- und addailliert.

PhpidentifiesAsersSSessionUsingSSessionCookiesAndSessionIDs.1) WHANE Session_Start () iscalled, phpGeneratesAuniqueSessionIDStoredInacookienMamePhpSsidontonTheusers.2) thisidallowStoretrieVessionDataFromtheServer.

Die Sicherheit von PHP -Sitzungen kann durch folgende Maßnahmen erreicht werden: 1. Verwenden Sie Session_regenerate_id (), um die Sitzungs -ID zu regenerieren, wenn sich der Benutzer anmeldet oder eine wichtige Operation ist. 2. Verschlüsseln Sie die Übertragungssitz -ID durch das HTTPS -Protokoll. A. Verwenden Sie Session_save_path (), um das sichere Verzeichnis anzugeben, um Sitzungsdaten zu speichern und Berechtigungen korrekt festzulegen.

PhpSessionFilesArestoredinTHedRectorySpecifiedBySession.save_path, typischerweise/tmponunix-likesystemsorc: \ windows \ temponwindows


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

Dreamweaver CS6
Visuelle Webentwicklungstools

Dreamweaver Mac
Visuelle Webentwicklungstools

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version
