微信支付curl出錯及錯誤碼解決方案

2021-08-14 13:23:20 字數 4071 閱讀 2535

出現場景

php fatal error:  uncaught exception '

wxpayexception

' with message '

curl出錯,錯誤碼:6

'in wxpayapi_php_v3/lib/wxpay.api.php:565

stack trace:

#0 wxpayapi_php_v3/lib/wxpay.api.php(62): wxpayapi::postxmlcurl('

', '

', false, 6)#

1 wxpayapi_php_v3/cyzjqpzf/jsapi.php(83

): wxpayapi::unifiedorder(object(wxpayunifiedorder))#2

thrown

in wxpayapi_php_v3/lib/wxpay.api.php on line 565

[10-oct-2015

16:50:58 asia/shanghai] php fatal error: uncaught exception '

wxpayexception

' with message '

curl出錯,錯誤碼:6

'in wxpayapi_php_v3/lib/wxpay.api.php:565

stack trace:

#0 wxpayapi_php_v3/lib/wxpay.api.php(62): wxpayapi::postxmlcurl('

', '

', false, 6)#

1 wxpayapi_php_v3/cyzjqpzf/jsapi.php(83

): wxpayapi::unifiedorder(object(wxpayunifiedorder))#2

thrown

in wxpayapi_php_v3/lib/wxpay.api.php on line 565

原因分析curle_couldnt_resolve_host(6)

無法解析主機。給定的遠端主機沒有得到解決。

解決方法

vi  etc/hosts

新增下面內容

101.227.143.34

open.weixin.qq.com

101.226.90.149

api.mch.weixin.qq.com

101.226.90.58 api.weixin.qq.com

出現場景

fatal error: uncaught exception 『wxpayexception『 with message 『curl出錯,錯誤碼:60『 in c:\wwwroot\fangbei\lib\wxpay.api.php:564 stack trace: #0 c:\wwwroot\fangbei\lib\wxpay.api.php(62

): wxpayapi::postxmlcurl(『

api.mch...『, false, 6) #1 c:\wwwroot\fangbei\pay\jsapi.php(36):

wxpayapi::unifiedorder(object(wxpayunifiedorder)) #2 thrown in c:\wwwroot\fangbei\lib\wxpay.api.php on line 564

原因分析證書校驗失敗

解決方法

第538行

curl_setopt($ch,curlopt_ssl_verifypeer,true);

curl_setopt($ch,curlopt_ssl_verifyhost,

2);//

嚴格校驗

修改為

curl_setopt($ch,curlopt_ssl_verifypeer,false);

curl_setopt($ch,curlopt_ssl_verifyhost,false);

//嚴格校驗

出現場景

fatal error: uncaught exception '

wxpayexception

' with message '

curl出錯,錯誤碼:58

'in c:\wamp\www\api\lib\wxpay.api.php on line 565 wxpayexception: curl出錯,錯誤碼:58

in c:\wamp\www\api\lib\wxpay.api.php on line 565 證書路徑正...

原因分析證書路徑錯誤

解決方法

windows伺服器上證書路徑使用絕對路徑。

curl_setopt($ch, curlopt_sslcert, dirname(__file__).'

cert

'.directory_separator.'

apiclient_cert.pem');

curl_setopt($ch, curlopt_sslkey, dirname(__file__).

'cert

'.directory_separator.'

apiclient_key.pem');

curl_setopt($ch, curlopt_cainfo, dirname(__file__).

'cert

'.directory_separator.'

rootca.pem

');

linux上使用相對路徑

curl_setopt($ch, curlopt_sslcert, '

cert

'.directory_separator.'

apiclient_cert.pem');

curl_setopt($ch, curlopt_sslkey,

'cert

'.directory_separator.'

apiclient_key.pem');

curl_setopt($ch, curlopt_cainfo,

'cert

'.directory_separator.'

rootca.pem

');

出現場景

原因分析

證書路徑錯誤

解決方法

方法同錯誤碼58

出現場景

原因分析

證書路徑錯誤

解決方法

方法同錯誤碼58

出現場景

支付curl出錯,錯誤碼:28

/wxpay_native/wxpay.api.php line: 563

/wxpay_native/wxpay.api.php(61):wxpayapi::postxmlcurl('

#1

原因分析

curle_operation_timedout(28

)操作超時。根據條件達到指定的超時期間。

解決方法或者將超時時間設定長一些。比如將超時時間改為60

function postxmlcurl($xml, $url, $usecert = false, $second = 60)

微信支付curl出錯及錯誤碼解決方案

出現場景 php fatal error uncaught exception wxpayexception with message curl出錯,錯誤碼 6 in wxpayapi php v3 lib wxpay.api.php 565stack trace 1 wxpayapi php v3...

微信支付curl出錯及錯誤碼解決方案

出現場景 php fatal error uncaught exception wxpayexception with message curl出錯,錯誤碼 6 in wxpayapi php v3 lib wxpay.api.php 565 stack trace 1 wxpayapi php v...

微信支付curl出錯及錯誤碼解決方案

出現場景 php fatal error uncaught exception wxpayexception with message curl出錯,錯誤碼 6 in wxpayapi php v3 lib wxpay.api.php 565 stack trace 1 wxpayapi php v...