Код: Выделить всё
Fatal error:
Uncaught Stripe\Error\ApiConnection: Unexpected error communicating with Stripe. If this problem persists, let us know at support@stripe.com.
(Network error [errno 77]: error setting certificate verify locations: CAfile: CApath: /etc/ssl/certs) in /var/www/html/assets/vendor/stripe/lib/HttpClient/CurlClient.php:284
Stack trace:
#0 /var/www/html/assets/vendor/stripe/lib/HttpClient/CurlClient.php(241): Stripe\HttpClient\CurlClient->handleCurlError('https://api.str...', 77, 'error setting c...', 0)
#1 /var/www/html/assets/vendor/stripe/lib/HttpClient/CurlClient.php(203): Stripe\HttpClient\CurlClient->executeRequestWithRetries(Array, 'https://api.str...')
#2 /var/www/html/assets/vendor/stripe/lib/ApiRequestor.php(364): Stripe\HttpClient\CurlClient->request('post', 'https://api.str...', Array, Array, false)
#3 /var/www/html/assets/vendor/stripe/lib/ApiRequestor.php(96): Stripe\ApiRequestor->_requestRaw('post', '/v1/charges', Array, Array)
#4 /var/www/html/assets/vendor/stripe/lib/ApiOperations/Request.php(5 in /var/www/html/assets/vendor/stripe/lib/HttpClient/CurlClient.php on line 284
Папка сертификатов имеет следующие разрешения. :
Код: Выделить всё
drwxr-xr-x 2 root root 20480 Apr 5 14:31 certs
Код: Выделить всё
-rw-r--r-- 1 root root 219596 Apr 5 14:29 cacert.pem
Просматривая сайт Stripe, он упомянул, что теперь требуется TLS 1.2. Я подтвердил, что мой сайт использует его. Но некоторые примеры тестового кода на сайте Stripe, похоже, указывают на то, что он не видит TLS 1.2.
Согласно ssllabs.com, мой сайт распознается как имеющий протокол TLS 1.2.
Пример кода Stripe, который я добавил на свой сайт для проверки:
Код: Выделить всё
\Stripe\Stripe::setApiKey("sk_test_BQokikJOvBiI2HlWgH4olfQ2");
try {
\Stripe\Charge::all();
echo "TLS 1.2 supported, no action required.";
} catch (\Stripe\Error\ApiConnection $e) {
echo "TLS 1.2 is not supported. You will need to upgrade your integration.";
}
Код: Выделить всё
echo 'PHP version: ' . phpversion() . PHP_EOL . '
';
echo 'cURL version: ' . curl_version()['version'] . PHP_EOL . '
';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.howsmyssl.com/a/check");
curl_setopt($ch, CURLOPT_SSLVERSION, 6);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo 'TLS version: ' . json_decode($response)->tls_version . PHP_EOL;
Код: Выделить всё
============= Stripe Suggested Test Code ============
TLS 1.2 is not supported. You will need to upgrade your integration.
================================================
==================== Version Code ===================
PHP version: 7.0.33-0+deb9u3
cURL version: 7.52.1
TLS version: TLS 1.2
================================================
Подробнее здесь: https://stackoverflow.com/questions/555 ... ficate-ver