zoukankan      html  css  js  c++  java
  • 支付宝支付php的demo或sdk报错 Warning: openssl_sign() [function.openssl-sign]: Unknown signature algorithm. in

    最近在做支付宝支付,在本地测试一切正常,上传到服务器就遇到报错:

    Warning: openssl_sign() [function.openssl-sign]: Unknown signature algorithm. in

    后来查了查,是我的服务器上PHP环境支持openssl_sign()但却不支持 OPENSSL_ALGO_SHA256这样的参数,问了一下大佬,才发现这个参数是在php5.4.8以上版本才支持,低版本的是使用的SHA256,于是乎试了一下,搞定!

    报错原因是支付宝的demo中AopClient.php文件里使用到了这样的语句:

    if ("RSA2" == $signType) {
    openssl_sign($data, $sign, $res,OPENSSL_ALGO_SHA256);
    } else {
    openssl_sign($data, $sign, $res);
    }

    解决办法就是把 OPENSSL_ALGO_SHA256 改成 SHA256

    if ("RSA2" == $signType) {
    openssl_sign($data, $sign, $res,SHA256);
    } else {
    openssl_sign($data, $sign, $res);
    }

    注意:这个文件中共有三处,要全部修改好!

    非常感谢linux交流群南宁的朋友,还有原著紫石头的文章。

  • 相关阅读:
    BZOJ 1492 [NOI2007]货币兑换Cash
    BZOJ 2285 [Sdoi2011]保密
    BZOJ 2962 序列操作
    BZOJ 3197 [Sdoi2013]assassin
    BZOJ 3131 [Sdoi2013]淘金
    BZOJ 3532 [Sdoi2014]Lis
    BZOJ 1923 [Sdoi2010]外星千足虫
    BZOJ 4855 [Jsoi2016]轻重路径
    BZOJ 4289 PA2012 Tax
    微信开发之 微信支付
  • 原文地址:https://www.cnblogs.com/sxiangyues/p/6884927.html
Copyright © 2011-2022 走看看