我有多个子域名,例如domain1.example.com,domain2.example.com。我有这些子域的中央数据库;当我登录(通过ajax)时,我为每个子域创建会话。
现在我希望当我从任何子域注销时,我会从已创建会话的所有子域(session_destroy)注销。 (我有维护会话的子域列表)。 Plz帮助您使用cURL从多个子域注销。
我在子域中循环使用以下cURL代码。
$url = 'http://' . $a_domain . ".localhost/panels/login?task=logout";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
此外,当我在浏览器中直接运行$ url时,它会从该子域运行并注销,但我想通过cURL循环工作。 ??
远程子域$ URL注销码
public function logout(){
echo '<br>before destroy <br>';
print_r($_SESSION);
session_destroy();
echo'<br>after destroy <br>';
print_r($_SESSION);
}
答案 0 :(得分:1)
像
这样的东西<?php
$domains=array();
$domains[]="a";
$domains[]="b";
$domains[]="c";
$domains[]="d";
foreach($domains as $d)
{
$url = "http://".$d.".localhost/panels/login?task=logout";
logout($url);
}
function logout($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
}
?>