我一直在一個網站上工作了很長時間,該網站高度依賴於PayPal正常工作。沒有它,這是真的沒用。SSL錯誤不能更改爲TLS
大約凌晨一點我的時間(我在CET時區)一切正常,我磨光了代碼,功能,它的工作原理應該如此。在我睡覺之前,我做了三重檢查,發現一切正常。
我早上醒來,沒有任何與貝寶有關的事實際上的作品。在我向你展示實際的代碼和錯誤之前,稍微解釋一下我正在使用的內容。我正在使用Express Checkout和Paypal Adaptive Payments SDK。
我有一些「虛擬」帳戶,我在developer.paypal.com上進行模擬推動者(所有者)和買方互動,因爲我有場景時所有者向用戶提供資金,反之亦然。無論如何,他們都工作得很好,現在他們都拋出這個錯誤(在Adaptive Payments SDK中,它告訴我哪一行代碼是錯誤的,並且在Express Checkout中,因爲這是通過文檔完成的代碼,它不會顯示哪個文件誤差卻是相同的錯誤):
'error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure'
現在,經過我看到這個帖子https://devblog.paypal.com/poodle-ssl-3-0-vulnerability/您剛纔禁用SSL完全,我意識到這個問題是在實際。您希望您的用戶現在可以使用TLS,這非常好。我三重檢查了我的服務器啓用了TLS,它的確和我改變了(已經超過一百萬次了)我的配置設置使用該卷TLS(因爲我使用PHP)通過執行類似的操作:
curl_setopt($ch, CURLOPT_SSLVERSION, 1);
(這是它在Express Checkout和Adaptive Pay中的樣子,它只是一個關聯數組,但它在兩者中都是一樣的)
我也在某處和您的建議中找到實際更新我的api憑據的地方。我做到了。我去了paypal.com - > API,然後點擊更新哪些工作,但後來我注意到,在我的developer.paypal.com帳戶,我有一些虛擬帳戶沒有任何改變。我應該手動更新這些還是什麼?
編輯:
這被髮送到貝寶的支持,我真的有急事,不能再次寫了整個事情,所以我們對此深感抱歉!問題是修復了感謝任何真正花時間閱讀的人。
該問題已解決,將CURLOPT_SSL_CIPHER_LIST => 'TLSv1'
添加到我的PPHttpConfig.php文件! :)
非常有幫助的提示重複您的答案在這裏https://stackoverflow.com/questions/26452755/php-curl-is-probably-using-sslv3-insted-of-tls-when-connecting-to-https/26765281# 26765281和這裏http://stackoverflow.com/questions/26763737/update-php-curl-request-from-sslv3-to-tls/26764845#26764845 – 2014-11-05 19:20:25
我在哪裏可以找到這個PPHttpconfig.php?我需要爲我們的magento網站之一..提前預訂 – Nazim 2014-11-26 13:12:20
嗨Nazim,進入你的貝寶的目錄,例如/ usr/lib/php5,那麼它應該是貝寶/供應商/貝寶/ sdk核心-php/lib目錄/貝寶/核心/ PPHttpConfig.php。 – 2014-12-10 18:35:30