PHP Curl身份验证,然后重定向

PHP Curl身份验证,然后重定向,php,authentication,redirect,curl,Php,Authentication,Redirect,Curl,我正在做一件非常简单的事情,我想首先通过对“”进行curl调用来验证用户,如果用户是可信的,则将用户重定向到该网站仪表板,即“” 现在,身份验证部分很好,但是当我通过执行header('location…)重定向用户时,它只会将其带到登录页面,这意味着会话不在那里, 下面是我使用的代码 $sessionStarted = session_start(); $username= $_POST['Username']; $password= $_POST['Pass']; $data = arra

我正在做一件非常简单的事情,我想首先通过对“”进行curl调用来验证用户,如果用户是可信的,则将用户重定向到该网站仪表板,即“” 现在,身份验证部分很好,但是当我通过执行header('location…)重定向用户时,它只会将其带到登录页面,这意味着会话不在那里, 下面是我使用的代码

$sessionStarted = session_start();

$username= $_POST['Username'];
$password= $_POST['Pass'];
$data = array("username" => "$username", "password" => "$password");                                                                    
$data_string = json_encode($data);    
$cookie_file_path = dirname(__FILE__)."/cookie_.txt";   

$ch = curl_init('https://www.mywebsite.com/login');                                                                      
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                                                                     
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                                                                  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);


curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);       
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
curl_setopt($ch, CURLOPT_COOKIEFILE,$cookie_file_path);
$strCookie = 'PHPSESSID=' . $_COOKIE[ session_name() ]. '; path=/';

curl_setopt( $curl, CURLOPT_COOKIE, $strCookie );           
curl_setopt($ch, CURLOPT_COOKIESESSION, true);


curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                          
    'Content-Type: application/json',                                                                                
    'Content-Length: ' . strlen($data_string)
    )                                                                       
);                                                                                                                   

$result = curl_exec($ch);      
$decoded = json_decode($result);
if (isset($decoded->result) && $decoded->result == 'ok') 
{

    header("Location: https://www.mywebsite.com/dashboard");
    exit;
}
else 
{      

    header("Location: http://www.mywebsite.com/?login=fsfailed" );
    exit;

}

你能给我们看看你的json opUpdate吗:经过大量搜索,我知道cookie没有通过的问题,因为当你使用“Header(Location…”时,你设置的cookie没有通过,我仍然没有解决cookie问题Update2:通过提供域(第5个参数)来解决它在setCookie函数中,显然我的Cookie被破坏了,因为我在一个域中设置它们并重定向到另一个域。你能给我们看一下你的json opUpdate吗:经过多次搜索,我知道Cookie没有遇到问题,因为当你使用“Header(Location…”时您设置的cookie没有通过,我仍然没有解决cookie问题Update2:通过在setCookie函数中提供域(第5个参数)来解决它,显然我的cookie被破坏了,因为我在一个域中设置它们并重定向到另一个域。