Приложение Twilio работает, будучи размещенным на Google App Engine, но не локально в PHP SDK

При попытке создать новую вспомогательную учетную запись этот код работает при развертывании (по URL-адресам https: // и http: //), но не локально в SDK:

require 'php/twilio-php/Services/Twilio.php';
require 'php/includes/twil_creds.php';

$client = new Services_Twilio($account_sid, $auth_token);

try {
$account = $client->accounts->create(array(
'FriendlyName' => 'New Account'
));
} catch(Services_Twilio_RestException $e) {
echo $e->getMessage();

}

Когда я запускаю его локально, я получаю эту ошибку:

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 C:\ivr3mil\php\twilio-php\Services\Twilio\HttpStream.php on line 62

Warning: file_get_contents(): Failed to enable crypto in C:\ivr3mil\php\twilio-php\Services\Twilio\HttpStream.php on line 62

Warning: file_get_contents(https://api.twilio.com/2010-04-01/Accounts.json): failed to open stream: operation failed in C:\ivr3mil\php\twilio-php\Services\Twilio\HttpStream.php on line 62

Fatal error: Uncaught exception 'Services_Twilio_HttpStreamException' with message 'Unable to connect to service' in C:\ivr3mil\php\twilio-php\Services\Twilio\HttpStream.php:65 Stack trace: #0 C:\ivr3mil\php\twilio-php\Services\Twilio.php(226): Services_Twilio_HttpStream->__call('post', Array) #1 C:\ivr3mil\php\twilio-php\Services\Twilio.php(226): Services_Twilio_HttpStream->post('/2010-04-01/Acc...', Array, 'FriendlyName=Ne...') #2 C:\ivr3mil\php\twilio-php\Services\Twilio\ListResource.php(92): Services_Twilio->createData('/2010-04-01/Acc...', Array) #3 C:\ivr3mil\php\twilio-php\Services\Twilio\Rest\Accounts.php(23): Services_Twilio_ListResource->_create(Array) #4 C:\ivr3mil\twiltest.php(11): Services_Twilio_Rest_Accounts->create(Array) #5 C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\php\setup.php(106): require('C:\\ivr3mil\\twil...') #6 {main} thrown in C:\ivr3mil\php\twilio-php\Services\Twilio\HttpStream.php on line 65

SDK обновлен, и я скачал библиотеку PHP из Twilio прямо вчера.

Любой вклад в то, почему это происходит, будет оценен!

1

Решение

Вот как я исправил проблему. редактировать Twilio.php, прямо над verify_peer, добавьте эту строку:

'cafile'        => '/etc/ssl/certs/ca-certificates.crt',

Это исправление работало для меня на Ubuntu 14.04 с PHP 5.5.9.

2

Другие решения

Я не могу высказать или прокомментировать, но исправление Рона ДеФулио сработало и для меня.

Надеясь, что кто-то из Twilio видит это и звонит.

Я добавил ссылку на эту тему в мой открытый тикет поддержки с Twilio по этой же проблеме.

1

По вопросам рекламы [email protected]