วิธีแก้ปัญหา cURL error 60: SSL certificate problem: unable to get local issuer certificate

สวัสดีครับผู้อ่านทั้งหลาย วันนี้ก็จะมาแชร์ประสบการณ์กันนะครับ เนื่องจากโดยปกติแล้วผมจะใช้งาน Laravel5.2 ร่วมกับ MailGun ในบ้างครั้งเวลาผมใช้งานร่วมกับ MAMP หรือ XAMP บ้างที่จะเจอปัญหาไม่สามารถที่จะส่ง email ออกไปจาก server ได้

เอาหล่ะครับ วันนี้ผมก็คงมาแบ่งปั่นวิธีการแก้ปัญหากันโดยง่ายของ Error นี้ครับ

วิธีการแก้ไข

แรกเริ่มให้เข้าไปโหลดไฟล์ cacert.pem จากเว็บไซต์นี้เลยครับ https://curl.haxx.se/ca/cacert.pem จากนั้นก็ให้นำไฟล์นี้ไปเก็บไว้สักที่นึง

โดยส่วนตัวผมใช้งาน MAMP ผมก็จะเอาไฟล์นี้ไปไว้ที่ /Applications/MAMP/cacert.pem ครับ

หลังจากนั้นก็ให้ทำการแก้ไขไฟล์ php.ini ขอคุณ อันนี้ก็ขึ้นอยู่กับว่าคุณใช้งาน OS อะไร และ Web Service อะไรนะครับ อันนี้ก็ผมอย่างที่กล่าวไปคือ MAMP + PHP7 ที่อยู่ของไฟล์ php.ini ก็จะเป็น  /Applications/MAMP/conf/php7.0.0/php.ini 

เมื่อเจอไฟล์ php.ini ให้มองหา curl.cainfo นะครับ ถ้าไม่มีก็ให้เขียนต่อท้ายไฟล์ php.ini ไปเลยนะครับ

หลังจากนั้นก็ให้ทำการ restart php service สักนิดนึง ก็เป็นอันจบพิธีครับ

— จบ —-

ก็จบไปแล้วนะครับ กับการแก้ไข cURL ไม่สามารถส่ง Email ออกไปข้างนอกได้แล้วแสดงข้อความ error ตามที่บอกไว้ข้างต้น ถ้าถูกใจยังไงก็อย่าลืมติดตามกันด้วยนะครับ :))

credit : https://laracasts.com/discuss/channels/general-discussion/curl-error-60-ssl-certificate-problem-unable-to-get-local-issuer-certificate