您的位置:首页 > 编程语言 > PHP开发

网关跳转 银联支付问题和注意事项

2016-02-05 13:37 896 查看
!!!在做支付接口的时候,尤为重要的是配置好日志,发生错误查看日志是最高效的开发方式,当你在思考哪里发生错误的时候,日志已经记录好了,日志路径在配置文件里面配置,如果发现配置完后不会生成,可能需要先创建日志文件夹

这里三个文件说明

1>cishanhui_pfx.pfx是私钥

2>acp20151027.cer    是跟客服获取的,客服说开发包里面有,但是我看了一下没有,除非指的是第三个文件验签证书acp_prod_verify_sign.cer  

3>acp_prod_verify_sign.cer是公钥验证签证书(经过试验证明,开发包里面的生产环境的验签证书是错的,跟客服要了第二个文件acp20151027,验签成功)

这里有几点注意的地方,

1.配置文件SDKConfig.php

// 验签证书路径(请配到文件夹,不要配到具体文件)

const SDK_VERIFY_CERT_DIR = 'D:/www/upacp_sdk_php/certs/';

路径用的是绝对路径

2.遇到错误不要盲目的测试,配置log文件,直接看什么错误,然后联系客服

//日志 目录

const SDK_LOG_FILE_PATH = 'D:/www/upacp_sdk_php/logs/';

常见错误

1.

Warning: file_get_contents(D:/www/cishan/upacp_sdk_php/certs/acp_test_sign.pfx): failed to open stream: No such file or directory in D:\www\upacp_sdk_php\utf8\func\secureUtil.php on line 108

Warning: openssl_x509_read(): supplied parameter cannot be coerced into an X509 certificate! in D:\www\upacp_sdk_php\utf8\func\secureUtil.php on line 112

Warning: file_get_contents(D:/www/cishan/upacp_sdk_php/certs/acp_test_sign.pfx): failed to open stream: No such file or directory in D:\www\upacp_sdk_php\utf8\func\secureUtil.php on line 159

Warning: openssl_sign(): supplied key param cannot be coerced into a private key in D:\www\upacp_sdk_php\utf8\func\secureUtil.php on line 31

原因:配置文件路径错误,配置好就行了的

2.

Warning: openssl_verify(): supplied key param cannot be coerced into a public key in D:\www\upacp_sdk_php\utf8\func\secureUtil.php on line 62

验签失败

可能原因:是验签证书错误,开发包里面自带的延签证书是错误的,解决跟客服要新的延签证书

这个的客服给出的解释是“验签时报的,存在格式不对的cer证书,如果存在upop_verify.cer,请直接删除,用不到的”,

推测:开发包里面的cer验签证书是错的,需跟客服拿新的证书

3.Waring:openssl_x509_read()[function.openssl-x509-read]:supplied parameter  cannot be coerced into a public key into an X509 certificate!

这个的客服给出的解释是“签名是报的,可能为证书格式不对,可能为密码不对”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 支付 银联