최근 고객을 위한 Alipay 서비스 창 작업을 하다가 오류가 발생했습니다.
경고: openssl_sign() [function.openssl-sign]: 알 수 없는 서명 알고리즘입니다.
나중에 확인해보니 내 서버의 PHP 환경에서 지원되는 openssl_sign()은 OPENSSL_ALGO_SHA256과 같은 매개 변수를 지원하지 않습니다. 사장님에게 문의한 결과 이 매개 변수는 php5.4.8 이하 버전에서만 지원된다는 것을 알게 되었기 때문에 시도해 보았습니다. 알았어요!
오류가 발생하는 이유는 Alipay 데모의 AopClient.php 파일이 다음과 같은 구문을 사용하기 때문입니다.
if ("RSA2" == $signType) {
openssl_sign($data, $sign, $res ,OPENSSL_ALGO_SHA256 );
} else {
openssl_sign($data, $sign, $res);
}
해결책은 OPENSSL_ALGO_SHA256을 SHA256
으로 변경하는 것입니다.
RSA2" =인 경우 = $signType) {
openssl_sign($data, $sign, $res,SHA256);
} else {
openssl_sign($data, $sign, $res);
}
참고: 이 파일에는 세 곳이 있으며 모두 수정해야 합니다!
위 내용은 Alipay 서비스 창 PHP 데모에서 오류가 보고되었습니다. 경고: openssl_sign() [function.openssl...의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!