男的舔女的下面视频在线播放-少妇愉情理仑片高潮日本-久久久久久国产一区二区三区-麻豆精品一区二区综合-国产精品超碰在线观看-网红极品女神精品视频在线-国产亚洲综合777-高清性视频一区二区播放-中文字幕第一页亚洲天堂

Discuz! 官方交流社區(qū)

標(biāo)題: 支付寶驗(yàn)簽后的一個(gè)BUG,導(dǎo)致積分無(wú)法購(gòu)買。 [打印本頁(yè)]

作者: wzzjhc    時(shí)間: 2023-3-9 12:20
標(biāo)題: 支付寶驗(yàn)簽后的一個(gè)BUG,導(dǎo)致積分無(wú)法購(gòu)買。
昨天搞了5個(gè)小時(shí),今天是4個(gè)小時(shí)。

api/payment/payment_alipay.php         
第88行      
openssl_free_key() 使用出錯(cuò),導(dǎo)致即使驗(yàn)簽通過(guò),也無(wú)法繼續(xù)執(zhí)行。
openssl_free_key($public_key);
//$public_key是公鑰字符串,不屬于資源,而openssl_free_key()是用來(lái)釋放資源的,所以在釋放字符串的時(shí)候出現(xiàn)錯(cuò)誤,我不知道這樣子理解對(duì)不對(duì)。

unset($public_key);  //所以我把它改成unset來(lái)代替openssl_free_key() 。

這樣子就不影響安全性,也能達(dá)到目的。



作者: 湖中沉    時(shí)間: 2023-3-9 12:53
$public_key是公鑰,自然是屬于密鑰資源的一種啊……
openssl_free_key用于釋放密鑰資源,用法沒(méi)毛病。
  1. openssl_free_key(resource $key_identifier): void
復(fù)制代碼
openssl_free_key() 從內(nèi)存中釋放和指定的 key_identifier相關(guān)聯(lián)的密鑰。

作者: 湖中沉    時(shí)間: 2023-3-9 12:57
建議你通過(guò)支付寶開(kāi)放平臺(tái) > 支持 > 技術(shù)支持 > 自助工具 > 云排查 訪問(wèn)并排查 異步通知問(wèn)題排查 和 請(qǐng)求返回錯(cuò)誤問(wèn)題排查
作者: wzzjhc    時(shí)間: 2023-3-9 18:05
湖中沉 發(fā)表于 2023-3-9 12:57
建議你通過(guò)支付寶開(kāi)放平臺(tái) > 支持 > 技術(shù)支持 > 自助工具 > 云排查 訪問(wèn)并排查 異步通知問(wèn)題排查 和 請(qǐng)求返 ...

我是純系統(tǒng)centos7,安裝了寶塔,然后安裝了dzx3.5,
php8 mysql 5.6
*******************
我后來(lái)沒(méi)用unset()而是在釋放資源前面把公鑰列到資源里,再釋放。
$public_key= openssl_pkey_get_public($public_key);//將公鑰列入資源
   openssl_free_key($public_key);//釋放資源公鑰
*******************
這句openssl_free_key()即使沒(méi)有的話,應(yīng)該也無(wú)傷大雅吧。

作者: wzzjhc    時(shí)間: 2023-3-9 18:07
云排查也沒(méi)有問(wèn)題哦。
通知時(shí)間:2023-03-09 17:57:50
通知地址:http://www.域名.com/api/payment/notify/notify_alipay.php
通知內(nèi)容: http://www.域名.com/api/payment/notify/notify_alipay.php?gmt_create=2023-03-09 17:57:43************
商戶響應(yīng):http狀態(tài)碼: 200, 返回: success.
提示:成功
作者: 湖中沉    時(shí)間: 2023-3-9 20:39
wzzjhc 發(fā)表于 2023-3-9 18:05
我是純系統(tǒng)centos7,安裝了寶塔,然后安裝了dzx3.5,
php8 mysql 5.6
*******************

目前這個(gè)做法大致沒(méi)問(wèn)題,但正確的應(yīng)該是補(bǔ)充openssl_get_publickey行為(你用的別名的也可以),然后用這個(gè)資源去做openssl_verify,問(wèn)題就不大了
作者: 湖中沉    時(shí)間: 2023-3-9 20:41
https://gitee.com/Discuz/DiscuzX/pulls/2037
提交了此PR,并實(shí)站測(cè)試:
從下到上,分別:
第一次:密鑰模式(未修改前),自動(dòng)成功
第二次:密鑰模式(修改后),自動(dòng)成功
第三次:證書(shū)模式(修改后),自動(dòng)成功

暫未測(cè)試未修改前的證書(shū)模式
作者: 湖中沉    時(shí)間: 2023-3-9 20:43
PS:根據(jù)描述,應(yīng)該是PHP8產(chǎn)生的問(wèn)題,因?yàn)镻HP8不允許空值的限制越發(fā)嚴(yán)重了,所以未引入的資源或空資源釋放報(bào)錯(cuò)了,在PHP7應(yīng)該是沒(méi)問(wèn)題的




歡迎光臨 Discuz! 官方交流社區(qū) (http://m.sdtechgong.com.cn/) Powered by Discuz! X5.0