Dans le développement Web, le référence fait partie de l'en-tête de demande HTTP qui identifie la page source de la demande. En obtenant un référence, vous pouvez réaliser des liens anti-vol, des statistiques de source utilisateur et d'autres fonctions. Cependant, il convient de noter que Http_Referer lui-même est facilement forgé, il n'est donc pas complètement fiable lorsque les exigences de sécurité sont élevées.
Étant donné que Http_Referer peut être falsifié, il est plus sûr d'utiliser la session ou les cookies pour déterminer si la demande provient de la page spécifiée. Ce qui suit est démontré par un exemple de code.
<!DOCTYPE html> <html> <body> <form action="determineuser.php" method="post" align="center"> <input type="submit" name="click" value="Déterminer la demande de l'utilisateur via la session"/> </form> <?php session_start(); // Ouvrir Session $setsession = uniqid(mt_rand(), TRUE); // Générer un identifiant unique $_SESSION['set'] = $setsession; $redirect = "determineuser.php?set={$setsession}"; // Livrable Session Logo echo "<h1 align='center'> " ECHO "Votre session actuelle est:". $ _ Session ['set']; // La session s'affiche sur la page écho "</h1> " ?> </body> </html>
<?php session_start(); // examiner Session Soumettre et formulaire if ( (isset($_SESSION['set']) && $_SESSION['set'] === TRUE) || isset($_POST['click']) ) { echo "Determined Last visited page on the server using HTTP REFERER:<br> ". $ _ Serveur ['http_referrer']; écho "<h1 align='center'> " écho "<p> C'est le moyen sécurisé de déterminer le référence en utilisant la session:</p> " echo $ _Session ['set']; // Vérifiez que la session correspond à l'écho "</h1> " } autre { // Si la source ne peut pas être déterminée, redirigez vers userRequest.php en-tête ('emplacement: userRequest.php'); sortie; } ?>
Il est simple d'utiliser $ _server ['http_referrer'] pour déterminer directement la source, bien qu'il ne soit pas sûr. Dans les scénarios avec des exigences de sécurité élevées, il est recommandé de vérifier la source de la demande via la session ou l'Ajax pour éviter les risques de contrefaçon de référence.