Найдите, содержит ли ваша ОС каталог сертификатов.Если это так, то необходимые сертификаты CA часто уже включены.Например, в Ubuntu это обычно /etc/ssl/certs
.Если этот каталог существует, задайте параметр пути CA:
curl_setopt($ch, CURLOPT_CAPATH, '/etc/ssl/certs');
В качестве альтернативы вы можете ссылаться на один файл сертификата CA.Включите файл cacert.pem в свой проект или установите его на своем сервере.Загрузите из надежного источника, например, cacert.org.Для одного файла не устанавливайте CAPATH, а вместо этого устанавливайте только CAINFO:
curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cacert.pem');
Отключение проверки однорангового узла и хоста - это быстрый, но небезопасный обходной путь к реальной проблеме.Эти функции существуют по уважительной причине: так что вы можете доверять, через стороннего производителя, что система, к которой вы подключаетесь, та, которую вы ожидаете.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);