سؤال

أنا أستخدم بطاقات الائتمان باستخدام بوابة الدفع. لنشر البيانات إلى خوادمهم، فأنا أستخدم Curl في PHP. لدي شهادة SSL الصادرة إلى نطاقي، لضمان مشفرة جميع بيانات Post'ed. نظرا لأن شهادة SSL مثبتة بالفعل، فهل ما زلت بحاجة إلى استخدام خيارات SSL لجعل الشعر؟ إذا كان الأمر كذلك، أي من الخيارات أحتاج إلى تعيين إعطاء الإعداد الخاص بي؟

لقد جربت الكود التالي دون جدوى:

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL,"https://secure.paymentgateway.com/blah.php");
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"); 

curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_CAINFO,  getcwd().'/cert/ca.crt');
curl_setopt($ch, CURLOPT_SSLCERT, getcwd().'/cert/mycert.pem');
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, 'password');

curl_setopt($ch, CURLOPT_POST, $count);

curl_setopt($ch,CURLOPT_POSTFIELDS,"variables...");                                                                 

$output = curl_exec($ch);
echo $output;
curl_close($ch);
هل كانت مفيدة؟

المحلول

حسنا، لقد قمت بالفعل بتعطيل التحقق (الذي لا أوصي به: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);). هذا يفتح لك هجمات الرجل في الوسط.

إليك برنامج تعليمي بسيط قد يساعدك:

http://developer.paypal-peral.com/pdn/board/message؟board.id=ipn&message.id=12754#m12754.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top