Solution au problème inter-domaines de session PHP
Dans le développement où le front-end et le back-end sont séparés, les requêtes inter-domaines sont devenues la norme. Lorsque nous traitons de problèmes interdomaines, nous impliquons généralement l'utilisation et la gestion de sessions. Cependant, en raison des restrictions de la politique d'origine du navigateur, les sessions ne peuvent pas être partagées par défaut entre les domaines. Afin de résoudre ce problème, nous devons utiliser certaines techniques et méthodes pour réaliser le partage de sessions entre domaines.
1. Utilisez des cookies pour partager des sessions entre domaines
La solution la plus courante consiste à utiliser des cookies pour partager des sessions entre domaines. Étant donné que les cookies ne sont pas limités par la politique de même origine, les informations de session peuvent être transférées et partagées entre différents noms de domaine.
Les étapes spécifiques sont les suivantes :
session_start(); $_SESSION['user'] = 'example';
setcookie(session_name(), session_id(), time() + 60*60*24*30, '/', 'www.example.com', false, true);
Parmi eux, www.example.com</ code> est le nom de domaine du serveur actuel et doit être modifié en fonction de la situation réelle. <code>www.example.com
是当前服务端的域名,需要根据实际情况进行修改。
fetch('http://www.example.com/api', { credentials: 'include', })
其中,credentials: 'include'
session_id($_COOKIE[session_name()]); session_start(); if(isset($_SESSION['user'])){ // session 跨域共享成功 }else{ // session 跨域共享失败 }
identifiants : 'include'
sont utilisés pour informer le navigateur envoie les informations d'identification, y compris le cookie, au serveur. $token = bin2hex(random_bytes(16)); // 将 token 存储到数据库中 // 返回 token 给客户端
Il est à noter que afin d'assurer la sécurité, le token doit avoir une durée de validité et être actualisé dans un certain délai. Côté serveur, les jetons expirés doivent être nettoyés régulièrement.
🎜Résumé : 🎜🎜Voici deux méthodes courantes pour résoudre le problème inter-domaines de la session PHP. Vous pouvez choisir la solution appropriée en fonction de votre situation réelle. Que des cookies ou des jetons soient utilisés, le traitement correspondant doit être effectué côté serveur pour réaliser le partage de sessions entre domaines. Dans le même temps, afin d'assurer la sécurité, nous devons également prendre certaines mesures pour protéger la sécurité des données de session. 🎜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!