Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  PHP: curl ja https märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
kpihus
Kreisi kasutaja
kpihus

liitunud: 14.04.2003




sõnum 29.05.2013 16:14:35 PHP: curl ja https vasta tsitaadiga

Üritan siis üht paypali makselahedust käima joosta. Paypal saadab makse kinnituse asünkoonselt IPN teatega. Kui teade on käes küsib minu süsteem uuesti PyPalilt kinntiust kas asi on õige. PP soovitab oma näidis scriptis teha seda curliga:


$ch = curl_init('https://www.paypal.com/cgi-bin/webscr');
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $req);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: Close'));

// In wamp like environments that do not come bundled with root authority certificates,
// please download 'cacert.pem' from "http://curl.haxx.se/docs/caextract.html" and set the directory path
// of the certificate as shown below.
// curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__) . '/cacert.pem');
if( !($res = curl_exec($ch)) ) {
    // error_log("Got " . curl_error($ch) . " when processing IPN data");
    curl_close($ch);
    exit;
}
curl_close($ch);


Mure on aga selles, et Curl annab vea: "Protocol ssl not supported or disabled in libcurl"

Samas phpinfost võiks nagu välja lugeda et SSL support on curlil olemas:

cURL support enabled
cURL Information 7.21.0
Age 3
Features
AsynchDNS No
Debug No
GSS-Negotiate Yes
IDN Yes
IPv6 Yes
Largefile Yes
NTLM Yes
SPNEGO No
SSL Yes
SSPI No
krb4 No
libz Yes
CharConv No
Protocols dict, file, ftp, ftps, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtsp, scp, sftp, smtp, smtps, telnet, tftp
Host i486-pc-linux-gnu
SSL Version OpenSSL/0.9.8o
ZLib Version 1.2.3.4
libSSH Version libssh2/1.2.6

Proovisn ka cacert.pem'i ette anda ja CURLOPT_SSL_VERIFYPEER määrata 0, aga ikka sama probleem.

Milles võiks kühvel olla ?
Kommentaarid: 26 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
napoleon
Unknown virus
napoleon

liitunud: 08.12.2008



Autoriseeritud ID-kaardiga

sõnum 29.05.2013 17:06:51 vasta tsitaadiga

See tähendab, et libcurl-l pole https tuge. Kui masinas root oled võid selle lisada, kui ei, siis võibolla aitab curl asemel näiteks file_get_contents funktsioon.
Kommentaarid: 77 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 60
tagasi üles
vaata kasutaja infot saada privaatsõnum
kpihus
Kreisi kasutaja
kpihus

liitunud: 14.04.2003




sõnum 30.05.2013 01:39:14 vasta tsitaadiga

napoleon kirjutas:
See tähendab, et libcurl-l pole https tuge. Kui masinas root oled võid selle lisada, kui ei, siis võibolla aitab curl asemel näiteks file_get_contents funktsioon.


Ja mina oma naiivsuses arvasin, et kui phpinfo näitab curli kohta ssl ja https tuge, siis võiks nagu kõik eeldused loodud olla. Aga no eks vääname siis libcurlil käsa.

EDIT: Siiski siiski, masinas on libcurl3 paki versioon (Debian(squeeze)) mille kirjelduses seisab "SSL support is provided by OpenSSL"

EDIT2: kaasus lukku, vanast fwrite lahendusest olid koodi jäänud ssl://* url'id ja neid tõesti Curl ei paista toetavat. Aga noh kes siis nii triviaalset viga suudab kohe märgata.
Kommentaarid: 26 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  PHP: curl ja https
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.