2016-04-18 10 views
1

私はSMSメッセージを一覧表示するPHPでこのコードを使用していますが、特定の番号に受信:Twilio:メッセージでキャッチされない例外「Services_Twilio_HttpStreamException」「サービスに接続できません」

<?php 
ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 

// Get the PHP helper library from twilio.com/docs/php/install 
require_once('twilio/Services/Twilio.php'); // Loads the library 

// Your Account Sid and Auth Token from twilio.com/user/account 
$sid = ""; 
$token = ""; 
$client = new Services_Twilio($sid, $token); 

$messages = $client->account->messages->getIterator(0, 50, array(
    'To' => $_SERVER['QUERY_STRING'] 
)); 

foreach ($messages as $message) { 
    echo "<tr><td>" . $message->from . "</td><td>" . $message->date_sent . "</td><td>" . $message->body . "</td></tr>"; 
} 
?> 

が、それは、このエラーメッセージを出力しています:

Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in /var/www/temp-sms.com/twilio/Services/Twilio/HttpStream.php on line 67 

Warning: file_get_contents(): Failed to enable crypto in /var/www/temp-sms.com/twilio/Services/Twilio/HttpStream.php on line 67 

Warning: file_get_contents(https://api.twilio.com/2010-04-01/Accounts/AC049b65c32bd0cad6a229b44719ac6116/Messages.json?Page=0&PageSize=50&To=%2B16466635449): failed to open stream: operation failed in /var/www/temp-sms.com/twilio/Services/Twilio/HttpStream.php on line 67 

Fatal error: Uncaught exception 'Services_Twilio_HttpStreamException' with message 'Unable to connect to service' in /var/www/temp-sms.com/twilio/Services/Twilio/HttpStream.php:70 Stack trace: #0 [internal function]: Services_Twilio_HttpStream->__call('get', Array) #1 [internal function]: Services_Twilio_HttpStream->get('/2010-04-01/Acc...') #2 /var/www/temp-sms.com/twilio/Services/Twilio.php(260): call_user_func_array(Array, Array) #3 /var/www/temp-sms.com/twilio/Services/Twilio.php(236): Base_Services_Twilio->_makeIdempotentRequest(Array, '/2010-04-01/Acc...', 1) #4 /var/www/temp-sms.com/twilio/Services/Twilio/ListResource.php(125): Base_Services_Twilio->retrieveData('/2010-04-01/Acc...', Array) #5 /var/www/temp-sms.com/twilio/Services/Twilio/ListResource.php(179): Services_Twilio_ListResource->getPage(0, 50, Array, NULL) #6 [internal function]: Services_Twilio_ListResource->getPageGenerator(0, 50, Array, NULL) #7 /var/www/temp-sms.com/twilio/Services/Twilio/AutoPagingIterator.php(104): call_user_func_array(Array, Array in /var/www/temp-sms.com/twilio/Services/Twilio/HttpStream.php on line 70 

更新 @philnashによって提案され、再起動などphp5-curlをインストール

新しいエラーメッセージ:ここ

Fatal error: Uncaught exception 'Services_Twilio_TinyHttpException' with message 'SSL certificate problem: self signed certificate in certificate chain' in /var/www/temp-sms.com/twilio/Services/Twilio/TinyHttp.php:119 Stack trace: #0 [internal function]: Services_Twilio_TinyHttp->__call('get', Array) #1 [internal function]: Services_Twilio_TinyHttp->get('/2010-04-01/Acc...') #2 /var/www/temp-sms.com/twilio/Services/Twilio.php(260): call_user_func_array(Array, Array) #3 /var/www/temp-sms.com/twilio/Services/Twilio.php(236): Base_Services_Twilio->_makeIdempotentRequest(Array, '/2010-04-01/Acc...', 1) #4 /var/www/temp-sms.com/twilio/Services/Twilio/ListResource.php(125): Base_Services_Twilio->retrieveData('/2010-04-01/Acc...', Array) #5 /var/www/temp-sms.com/twilio/Services/Twilio/ListResource.php(179): Services_Twilio_ListResource->getPage(0, 50, Array, NULL) #6 [internal function]: Services_Twilio_ListResource->getPageGenerator(0, 50, Array, NULL) #7 /var/www/temp-sms.com/twilio/Services/Twilio/AutoPagingIterator.php(104): in /var/www/temp-sms.com/twilio/Services/Twilio/TinyHttp.php on line 119 
+0

これは異常です。サーバーから他のアウトバウンドAPIコール(Twilioや他のサービスへ)を行うことはできますか? – philnash

+0

@philnashこんにちは。私は警告メッセージも貼り付けていませんでした。私は今これらを追加しました。これらは何の助けになりますか?私はTwilioの新しいもので、どこでもAPIの経験はほとんどありません。私はこれをLinodeで実行しています。 – user6219126

+0

[Twilio PHP API Librarie:警告:ファイル\ _get \ _contents():コード1でSSL操作が失敗しました](http://stackoverflow.com/questions/27313186/twilio-php-api-librarie-warning-ファイル取得コンテンツ - ssl-operation-failed-with) – philnash

答えて

1

Twilioの開発者エバンジェリスト。

これはthis oneと同様の質問ですので、私はここで答えを再現しました。しかし、StackOverflowのルールがこれを複製として閉じる方が良いかもしれません。

-

私は、これはあなたがPHPのためのカールバインディングを持っていないときに起こりました。 recompiling PHP with curlまたはinstalling the php5-curl packageを試してください。

それがまったく役に立ったら教えてください。

[編集]

あなたは今、自己署名証明書に関するエラーを取得している見つけた場合、あなたがTwilio PHP FAQで利用できるアドバイスに従うことになるでしょう。

+0

私はそれを与えるでしょう。あなたは "なぜ?" (そこのコメントとして)。ありがとう。 – user6219126

+0

なぜ 'curl'が' file_get_contents'を超えて動作するのか、正確にはわかりません。 Twilioライブラリは、カールの有無にかかわらずPHP環境をサポートしていますが、カールバージョンはほとんどの場合、より適しているようです。あなたは 'file_get_contents'の証明書を設定するそのページで他の答えを試すことができます。私はまだPHPの開発者ですが、私は恐れて深く答えられません。 – philnash

+0

php5-curlをインストールして再起動しましたが、新しいエラーメッセージが表示されます。 – user6219126

関連する問題