Maison >développement back-end >tutoriel php >Comment puis-je vérifier en toute sécurité l'origine des requêtes en PHP au lieu de m'appuyer sur le HTTP_REFERER peu fiable ?

Comment puis-je vérifier en toute sécurité l'origine des requêtes en PHP au lieu de m'appuyer sur le HTTP_REFERER peu fiable ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-21 19:21:11382parcourir

How Can I Securely Verify the Origin of Requests in PHP Instead of Relying on the Unreliable HTTP_REFERER?

Détermination du Referer en PHP : méthodes fiables et sécurisées

En PHP, la variable serveur HTTP_REFERER peut indiquer la page qui a envoyé ou appelé le courant page. Cependant, en raison de son manque de fiabilité, une approche plus sécurisée est nécessaire. Cet article explique une meilleure façon de vérifier l'origine des requêtes et de garantir qu'elles proviennent de votre site.

Pourquoi HTTP_REFERER n'est pas fiable

Le HTTP_REFERER est envoyé par le navigateur du client et peut être facilement falsifié ou absent. Cela le rend peu fiable à des fins de sécurité.

Vérification de l'origine de la demande

Au lieu de vous fier au HTTP_REFERER, envisagez d'utiliser la méthode suivante :

  • Cookies : Les cookies sont envoyés avec les requêtes AJAX, permettant de vérifier que l'utilisateur a interagi avec votre site. En définissant et en vérifiant les cookies, vous pouvez authentifier les utilisateurs ou suivre leur historique de navigation sur votre site Web.

Exemple de code :

// Set a cookie to track user activity
setcookie("visited_my_site", true);

// Check if the cookie has been set, indicating a previous visit to your site
if (isset($_COOKIE["visited_my_site"])) {
  // Request is coming from your site.
}

Conclusion

Bien que HTTP_REFERER puisse fournir certaines informations, son manque de fiabilité le rend impropre à des fins de sécurité. En utilisant des cookies, vous pouvez vérifier de manière fiable l'origine des demandes et vous assurer qu'elles proviennent de votre site. Cette approche offre une solution plus sécurisée pour authentifier les utilisateurs et empêcher tout accès non autorisé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn