Nefunguje cURL na HTTPS

Rozjeli jste si vývojové prostředí webů (třeba XAMPP – PHP, MySQL, … ) na vlastním pc – localhostu a nefunguje vám php funkce cURL na https adresy? A na nezabezpečený protokol http vám cURL funguje?

Mně osobně se to stalo, ani žádná chyba nebyla zobrazena natož zalogována, takže jsem problém hledal trochu déle, než obvykle.

Řešení je triviální – tudíž rychlé. Stačí stáhnout cacert.pem, uložit jej a nastavit k němu cestu přes konfigurační soubor php.ini.

Vykašlete se na návody, kde vám budou radit nastavit parametr CURLOPT_SSL_VERIFYPEER na hodnotu false, to není řešení problému, ale jeho obcházení!

Krok za krokem:

  1. Stáhnout cacert.pem (aktuální verze z Mozilly)
  2. Otevřít konfigurační soubor php.ini a najít sekci [curl]
  3. Nastavit cestu k cacert.pem
  4. Zrestartovat Apache

Moje sekce curl v php.ini vypadá takto:

[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo = „C:\WWW\cacert.pem“

Doporučuji cestu k souboru cacert.pem nastavit i pro sekci níže – openssl. Následně stačí zrestartovat Apache a hotovo!

Pokud vám návod nepomohl, dejte vědět přes komentář, poradím vám individuálně.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *