zoukankan      html  css  js  c++  java
  • 采用curl时候, Safari下cookie异常

    基于wordpress,开发了一个插件,用户权限还是基于wordpress。
    因此,必须增加一个权限验证接口islogin.php,以判断用户是否登录。

     1 function check_login(){
     2     $current_url = ( is_ssl() ? 'https://' : 'http://' ) .
     3                         $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
     4     $islogin_url = preg_replace("/\/trial\/.*/is", "/is-login.php?sn=".
     5                       time(), $current_url);
     6     $ch = curl_init();
     7     curl_setopt($ch, CURLOPT_POST, FALSE);
     8     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     9     curl_setopt($ch, CURLOPT_URL, $islogin_url);
    10     /*如果加上这个请求头
    11      1.PHP 5.3.5-1ubuntu7.7 with Suhosin-Patch (cli) , Safari下就会异常。
    12      2.PHP 5.3.2-1ubuntu4.14 with Suhosin-Patch (cli) , Safari下又正常。
    13      3.PHP 5.3.8 (cli) (built: Aug 23 2011 11:50:20), Safari下又正常。
    14     */
    15     //$headers = 'Set-Cookie: ';
    16     foreach ( $_COOKIE as $cookieKey => $cookieVal ) {
    17         $headers .= $cookieKey."=".urlencode($cookieVal)."; ";
    18     }
    19     $headers = substr($headers,0,-2) . "\r\n";
    20     curl_setopt($ch, CURLOPT_COOKIE, $headers);
    21     curl_setopt($ch, CURLOPT_POSTFIELDS, FALSE);
    22     $data = curl_exec($ch);
    23     curl_close($ch);
    24     return $data != 1? false: true;
    25 }
  • 相关阅读:
    最小费用最大流问题
    成大事必备9种能力、9种手段、9种心态
    转 fpga学习经验2
    算法 FFT理论1
    FPGA进阶之路1
    FPGA:亲和力激活竞争力
    1030 又回来了
    转 fpga学习经验1
    调查:近半大学生愿接受15002000元月薪
    转 观点:哪些人适合做FPGA开发(精华)
  • 原文地址:https://www.cnblogs.com/uniqid/p/4154643.html
Copyright © 2011-2022 走看看