Несмотря на тщательную настройку, вы можете столкнуться с «Проблемой с сертификатом SSL» Ошибка сертификата CA (путь? права доступа?)» при использовании CURL с HTTPS в PHP. Эта проблема может возникнуть после обновления библиотек Curl.
1. Отключить проверку хоста и узла:
curl_setopt($cHandler, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);
2. Включите CURLOPT_SSL_VERIFYPEER и определите сертификат CA:
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
3. Использовать пакетный сертификат CA для сервера:
Аналогично вы можете попробовать пакет позитивного SSL.ca, предоставленный сервером.
4. Обновите настройки PHP INI:
Настройте Curl.cainfo в php.ini так, чтобы он указывал на файл сертификата CA.
5. Переименуйте базу данных NSS:
Временно переименуйте базу данных NSS, чтобы исключить общесистемные сертификаты.
6. Обновление библиотек и перезагрузка:
Перезапуск системы после обновления библиотек может решить проблему.
7. Отключить проверку с использованием CURLOPT_SSL_VERIFYHOST и CURLOPT_SSL_VERIFYPEER:
Рекомендуется, если проверка не требуется.
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
Если ни одно из этих решений не работает, рассмотрите возможность обновления до последних версий библиотеки и перезагрузки системы. Кроме того, вы можете проконсультироваться со своим хостинг-провайдером или администратором сервера, чтобы определить, есть ли какие-либо конкретные проблемы с сертификатами, влияющие на вашу среду.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3