How To Fix cURL Error 60 SSL Certificate Problem
وردپرس در کنار تمام امکاناتی که به ما میده؛ گاهی خطا های خیلی رو مخی رو هم داره و ما با مشکلات مختلفی مواجه میشیم که امکان دریافت فایل از یک آدرس اینترنتی رو نداریم و بدون هیچ توضیحی فقط خطای cURL error 60 SSL certificate problem رو میبینیم.
اگر شما با خطای امنیتی ssl مواجه شدید، این مقاله بیاتم رو حتما بخونید تا مشکلتون رو حل کنیم!
cURL error 60 SSL certificate problem بیشتر در لوکال هاست و هنگام استفاده از نرم افزار های Xampp و Wamp به وجود میاد؛
در لاراول هم با عنوان guzzle ssl certificate issue با اون مواجه هستیم که خیلی رو مخه و نمیذاره کارمون رو درست انجام بدیم!
چرا خطای cURL Error 60 SSL certificate به وجود می آید؟
معمولا وقتی از پروتکل http:// برای دریافت اطلاعات از طریق API اقدام میکنیم؛ با خطایی مواجه نیستیم!
اما خب گاهی اوقات برای فراخوانی اطلاعات API مجبوریم بجای پروتکل http:// از پروتکل ایمن https:// استفاده کنیم؛ که بعضی اوقات هم این خطا رو میبینید.
به دلیل دریافت اطلاعات و فراخوانی API در لوکال از طریق https:// بجای http:// این خطا به وجود میاد چون ما در لوکال گواهی و تاییدیه ssl نداریم و فراخوانی اطلاعات API به صورت self-signed (شخصی) انجام میشه.
چطور مشکل cURL Error 60 SSL Certificate را در XAMPP حل کنیم؟
برای حل مشکل، ابتدا فایل “cacert.pem” را با مراجعه به آدرس http://curl.haxx.se/ca/cacert.pem دانلود کنید. (دانلود مستقیم فایل cacert.pem از سرور بیاتم)
نام فایل را تغییر ندهید و آن را با عنوان cacert.pem ذخیره کنید.
بعد از اینکه فایل مربوط به ssl رو دانلود کردید؛ در نرم افزار XAMPP به آدرس :
C:\xampp\php\extras\ssl\
بروید و فایلی که دانلود کردید (cacert.pem) رو در این پوشه کپی کنید. حالا باید بریم سراغ مرحله بعدی و فایل php.ini رو ویرایش کنیم!
برای دسترسی به فایل php.ini در زمپ (XAMPP Server) به آدرس C:\xampp\php مراجعه کنید و فایل php.ini رو توسط ویرایشگر متنی دلخواه خودتون باز کنید.
در خط 1962 ؛ قبل از ;[cURL] ، سمی کالن (;) را حذف کنید و بجای اطلاعات پیش فرض، خط زیر رو کپی و جایگزین کنید تا به شکل عکس زیر برسید
curl.cainfo = “C:\wamp64\bin\php\cacert.pem”
در خط 1967 ؛ قبل از ;[openssl] ، سمی کالن (;) را حذف کنید و بجای اطلاعات پیش فرض، خط زیر رو کپی و جایگزین کنید تا به شکل عکس زیر برسید
openssl.cafile = “C:\xampp\php\extras\ssl\cacert.pem”
بعد از انجام تغییرات بالا؛ نیاز هست که تکه کد زیر رو به فایل function.php قالب خودتون اضافه کنید :
add_filter(‘https_ssl_verify’, ‘__return_false’);
بعد از اینکه مراحل بالا رو انجام دادید، کافیه سرویس های مربوط به Apache و MySQL رو در نرم افزار زمپ (XAMPP) ریستارت کنید تا مشکل شما به صورت کامل حل بشه.
چطور مشکل cURL Error 60 SSL Certificate را در WAMP Server حل کنیم؟
برای رفع خطای cURL Error 60 SSL Certificate در نرم افزار WAMP Server باید کلیه مراحلی که برای نرم افزار زمپ طی کردیم را انجام دهیم با این تفاوت که محل قرار گیری فایل cacert.pem در ومپ سرور
C:\wamp64\bin\php\
می باشد که باید فایل دانلود شده را در مسیر بالا قرار دهیم.
پس از آن فایل php.ini را دقیقا مطابق با نرم افزار زمپ اصلاح و لینک مربوط به فایل cacert.pem رو به صورت :
curl.cainfo = “C:\wamp64\bin\php\cacert.pem”
و
openssl.cafile = “C:\wamp64\bin\php\cacert.pem”
قرار بدید و Apache و MySQL رو در ومپ سرور ریستارت کنید.
در صورتیکه مجددا خطای cURL error 60 SSL certificate in Wamp Server رو دریافت کردید؛ همانند نرم افزار XAMPP کد زیر را در فایل فانکشن قالب خودتون قرار بدید.
add_filter(‘https_ssl_verify’, ‘__return_false’);
و سرور خودتون رو مجددا ریستارت کنید تا به راحتی بتونید از شر این مشکل خلاص بشید.
دیدگاه خودتان را بنویسید!