2016-04-11 12 views
6

"Paypal PHP Restful SDK"に問題があります。私のyproblemは、(サンドボックスモードで)私はときどきエラー "ホストを解決できませんでした"を取得します。これは、サンドボックスモードで10回ごとの支払いセッションごとに発生します。Paypal Restful - ホストを解決できません

ここで記録されたエラー:

mod_fcgid: stderr: PHP Fatal error: Uncaught exception 'PayPal\\Exception\\PayPalConnectionException' with message 'Could not resolve host: api.sandbox.paypal.com' in /var/www/xxxxx.com/httpdocs/app/paypal/paypal/rest-api-sdk-php/lib/PayPal/Core/PayPalHttpConnection.php:137 

SDKからcorrospendingラインは次のとおりです。

//Throw Exception if Retries and Certificates doenst work 
if (curl_errno($ch)) { 
    $ex = new PayPalConnectionException(
     $this->httpConfig->getUrl(), 
     curl_error($ch), 
     curl_errno($ch) 
    ); 
    curl_close($ch); 
    throw $ex; 
} 

情報:私は何であるか私のVSERVER

には証明書誰かが知っていますが、持っていません間違っている?

+2

Paypal sdkはサンドボックスモードでエラーを返し、次にこれらのケースをテストして正しく処理する必要があります – atrebbi

+0

@atrebbiこの動作を故意のこの動作を説明する公式のPaypal SDKドキュメントへのリンクでバックアップしてください。もしそうなら、私は驚くだろう。 –

+1

エラーをシミュレートするには、エラー条件をサンドボックスアカウントに設定する必要があります(否定的なテストでなければなりません;常に失敗したり、ランダムエラーが発生するようにセットアップできるかどうかはわかりません) – atrebbi

答えて

8

問題を完全に診断して原因を見つけるには情報が不十分です。あなたの実行環境、DNSセットアップの問題、接続のタイムアウトなどにネットワーキングの問題があるかもしれません。しかし、問題を再現するために頻繁に発生するので、hostやなどのツールを使用してapi.sandbox.paypal.comを解決しようとするか、PHP

error_reporting(E_ALL); 
var_dump(gethostbyname('api.sandbox.paypal.com')); 

この問題がここでも発生するかどうかを確認するために何度も実行します。回避策/一時的な修正としては、api.sandbox.paypal.comの代わりにIPアドレス(現在は173.0.82.78)を使用するか、ローカル/etc/hostsファイルを編集して

を追加することができます。この問題を解決するには、
173.0.82.78 api.sandbox.paypal.com 
0

いつでもDNSキャッシュをフラッシュしてネットワークインターフェイスを再起動することができます。 また、pingを試して、PayPal APIが実際にping可能(到達可能)かどうかを確認したり、Google DNSにも変更してみてください。

関連する問題