Tag Archives: curl ssl

[PHP] Menggunakan cURL pada HTTPS

Sebelumnya, jika web server Anda belum di-enable cURL-nya bisa baca artikel ini : Enable cURL di AppServ.

Berikut tips menggunakan cURL mengakses HTTPS yang disampaikan oleh Peter Chng di blog-nya unitstep.net.

Download sertifikat dari url yang akan kita akses, dengan cara:

  1. Buka url dengan browser Firefox (misal https://000webhost.com/cpanel-login)
  2. Klik gambar gembok di kiri atas, kemudian klik tanda panah kanan
    get-certificate-1
  3. Klik More Information
    get-certificate-2
  4. Klik View Certificate
    get-certificate-3
  5. Export
    get-certificate-4
  6. Save as sesuai kebutuhan, misal CACerts.crt
    get-certificate-5

Setelah download sertifikat selesai, copy file sertifikat tersebut ke folder tempat sekrip PHP Anda.

Sekrip untuk menggunakannya sebagai berikut:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://000webhost.com/cpanel-login");
curl_setopt($ch, CURLOPT_PROXY, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiesjar.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiesfile.txt");
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_CAINFO, "CAcerts.crt");
$output = curl_exec($ch);

echo $output;

Kuncinya ada pada baris ini:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_CAINFO, "CAcerts.crt");

Sesuaikan dengan kebutuhan Anda masing-masing..

Semoga bermanfaat….