网关跳转 银联支付问题和注意事项
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!
这个的客服给出的解释是“签名是报的,可能为证书格式不对,可能为密码不对”
这里三个文件说明
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!
这个的客服给出的解释是“签名是报的,可能为证书格式不对,可能为密码不对”
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- ASP.NET、ASP、PHP、JSP之间有什么区别?
- PHP VBS JS 函数 对照表
- C语言实现的统计php代码行数功能源码(支持文件夹、多目录)
- php xml 入门学习资料