В Redhat Linux в сценарии PHP я устанавливаю параметры cURL как таковые:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, True);
curl_setopt($ch, CURLOPT_CAINFO, '/home/andrew/share/cacert.pem');
Тем не менее, я получаю это исключение при попытке отправить данные
(curl error: 77) error setting certificate verify locations:
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
Почему он ищет файл CA в /etc/pki/tls/certs/ca-bundle.crt
? Я не знаю, откуда эта папка, потому что я ее нигде не устанавливаю.
Разве он не должен искать в указанном мной месте, /home/andrew/share/cacert.pem
? У меня нет разрешения на запись /etc/
так что просто скопировать файл невозможно. Мне не хватает другого варианта завитка, который я должен использовать?
(Это на виртуальном хостинге - возможно ли, что он запрещает мне устанавливать другой путь для файла CA?)
Попробуйте заменить CURLOPT_CAINFO на CURLOPT_CAPATH.
А также взгляните на опцию SSLCERT.