Ama*_*rja 2 php ssl curl laravel-5
我正在 Laravel 中做项目。我正在使用 plivo api 发送短信。为此,我遵循了在
https://www.plivo.com/docs/getting-started/send-a-single-sms/。
但是当我尝试运行我的 php 文件时,我收到错误消息
“致命错误:未捕获的异常 'GuzzleHttp\Exception\RequestException' 带有消息 'cURL 错误 60:SSL 证书问题:证书链中的自签名证书(请参阅http://curl.haxx.se/libcurl/c/libcurl-errors。 html)' 在 G:\Xampp\htdocs\plivoTrial\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:187 堆栈跟踪:#0 G:\Xampp\htdocs\plivoTrial\vendor\guzzlehttp\guzzle\src\Handler \CurlFactory.php(150): GuzzleHttp\Handler\CurlFactory::createRejection(Object(GuzzleHttp\Handler\EasyHandle), Array) #1 G:\Xampp\htdocs\plivoTrial\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory .php(103): GuzzleHttp\Handler\CurlFactory::finishError(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp\Handler\CurlFactory)) #2 G:\Xampp\htdocs \plivoTrial\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php(43): GuzzleHttp\Handler\CurlFactory::finish(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp \Handler\CurlFactory)) #3 G:\Xampp\htdocs\plivoTria in G:\Xampp\htdocs\plivoTrial\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php 在线 187"。
我的 php 文件看起来像,
<?php
require 'vendor/autoload.php';
use Plivo\RestAPI;
$auth_id = "xxxxxxxxxxxxx";
$auth_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxx";
$p = new RestAPI($auth_id, $auth_token);
// Set message parameters
$params = array(
'src' => 'xxxxxxxxxxx',
'dst' => '91xxxxxxxxxx',
'text' => 'Hi, I am Amarja :)',
'url' => 'http://localhost/untitled/sentsms.php',
'method' => 'POST'
);
// Send message
$response = $p->send_message($params);
echo "Response : ";
print_r ($response['response']);
echo "<br> Api ID : {$response['response']['api_id']} <br>";
echo "Message UUID : {$response['response']['message_uuid'][0]} <br>";
?>
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题。请提前提供帮助和非常感谢。
不要禁用 SSL
相反,修复您的 PHP 安装。
这些说明在 Windows 上对我有用。
当您的 CA 根证书丢失或过期时,会出现此问题。由于目前所有Windows 平台 PHP 安装程序都不在发行版中包含 CA 根证书,因此它在 Windows 上比在 Linux 上更常见。
以下是更新 CA 根证书的方法:
[curl]
curl.cainfo=c:\xampp\php\cacert.pem
Curl 现在有一个有效的 CA 根证书包,可以验证远程服务器的 SSL 证书。
如果您在 Windows 计算机上运行任何Google Cloud Platform PHP 示例,您将收到以下 cURL 错误:CURLE_SSL_CACERT (60) - 对等证书无法使用已知 CA 证书进行身份验证。该错误现在应该是不言自明的以及如何修复它。