2012-05-01 15 views
0

こんにちは私はPHPでc2dmのコードを書いていますこれはDrupalモジュールのコードです、私の問題は私のlocalhost "wamp"サーバーで動作していますが、私のcentos 5 var_dump($ response)はbool(false)を返し、私のドメインは認証され、カールは私のサーバで正常に動作しています。PHPのc2dmコードの偽の応答

function push_notifications_c2dm_token() { 
    $data = array(
    'Email'   => PUSH_NOTIFICATIONS_C2DM_USERNAME, 
    'Passwd'  => PUSH_NOTIFICATIONS_C2DM_PASSWORD, 
    'accountType' => 'HOSTED_OR_GOOGLE', 
    'source'  => 'Company-AppName-Version', 
    'service'  => 'ac2dm', 
); 

    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, PUSH_NOTIFICATIONS_C2DM_CLIENT_LOGIN_ACTION_URL); 
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); 
    curl_setopt($curl, CURLOPT_POST, TRUE); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $data); 
    $response = curl_exec($curl); 
    var_dump($response); die(); 
    curl_close($curl); 

    // Get the auth token. 
    preg_match("/Auth=([a-z0-9_\-]+)/i", $response, $matches); 
    $auth_token = $matches[1]; 

    if (!$auth_token) { 
    watchdog('push_notifications', 'Google C2DM Server did not provide an authentication token.', NULL, WATCHDOG_ERROR); 
    } 
    else { 
    return $auth_token; 
    } 
} 

答えて

1

あなたはあなたのコードで問題を発見するcurl_error()http://www.php.net/manual/en/function.curl-error.php)を使用することができます。 curl_exec()によって返されたfalse booleanは、問題を解決するのに十分な情報を提供していません。

+0

私はこのコマンドを使用しています。これはエラーです "プロトコルhttpsはサポートされていないか、libcurlで無効になっています" –

+0

centos 5サーバーがvpsまたは専用サーバーの場合、完全に管理できるhttpsプロトコルをlibcurl PHPライブラリに追加します。私はこれを行う方法がわからない、私はGoogleがあなたを助けることができると思う;) –

+0

は、専用サーバーと私はあなたが正しい方法で私を入れてくれてありがとう:)#: –

関連する問題