2016-09-21 130 views
0

經過近兩年的使用stackoverflow解決我的問題,這是我第一次沒有找到解決方案,所以我的第一篇文章。Symfony 2.7,PayumBundle,Paypal

我目前正在進行培訓,我必須在symfony 2.7上運行的項目實施paypal付款。

我選擇payumBundle(這在我看來是最新的軟件包)。

在PayPal的沙箱中工作正常,但是當我想用活的憑據進行測試時,它會崩潰。

我對payum composer.json: "payum/payum-bundle": "1.0.3", "payum/payum": "1.1.4", "payum/core": "1.3.0", "php-http/guzzle6-adapter": "^1.0"

我的配置: payum: security: token_storage: AppBundle\Entity\Announce\PaymentToken: { doctrine: orm } storages: AppBundle\Entity\Announce\PaymentAnnounce: { doctrine: orm } gateways: paypal_express_checkout: paypal_express_checkout_nvp: username: "%paypal_username%" password: "%paypal_password%" signature: "%paypal_signature%" sandbox: "%payment_test%"

當我和沙箱參數測試(與它的工作我的個人帳戶)。 我的問題是,當我想去「現場」它不再工作。 我有權訪問paypal上的商業帳戶,所以我擁有api的憑證(用戶名,密碼,簽名),並且我將沙盒變爲假(這是正確的想法不做?)。但是,在付款/拍攝時,我收到了「cURL錯誤51:SSL:證書驗證失敗(結果:5)」。

我有很長時間的搜索,我沒有找到任何工作解決方案。 我不得不承認,如果這是捆綁包問題還是我的環境問題(Mac El Capitan,Liip的PHP 5.6.23,curl 7.47.1,這不是我爲編碼創建環境)顯然PHP與http://php-osx.liip.ch/一起安裝,所以openssl和curl在裏面,我不知道如何更新它們(curl,openssl,libs))。你有任何鏈接?

例如,當我嘗試釀造升級捲曲它是說,嫋嫋不捲曲安裝在終端

感謝訪問提前對您有所幫助。

+0

試過這樣:http://stackoverflow.com/問題/ 25613977/os-x-yosemite-curl-errors? – Nevertheless

回答

0

您使用Guzzle6,它讓我想到了一個similar problem我用捲髮和guzzle認證。 The answer適用於Windows,但評論指出它運行OSX。

答:
你只需要設置cacert.pem到curl.cainfo。 自PHP 5.3.7你可以這樣做:

download https://curl.haxx.se/ca/cacert.pem and save it somewhere. 
update php.ini -- add curl.cainfo = "PATH_TO/cacert.pem" 

否則,你需要做的每一個捲曲資源如下:

curl_setopt ($ch, CURLOPT_CAINFO, "PATH_TO/cacert.pem");