2016-08-17 9 views
1

問題がもともと議論されたリモートサーバーとのSSLハンドシェイク中にエラーが発生しました: PayPal Sandbox 500 Proxy Error- PayPal Adaptive https://www.paypal-community.com/t5/About-Payments/Adaptive-payment-api-is-sending-Proxy-error/m-p/1091510ペイパル:

その問題は私が私の上のコードを変更せずにすべての要求に

<!DOCHTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
    <html><head> 
    <title>500 Proxy Error</title> 
    </head><body> 
    <h1>Proxy Error</h1> 
    The proxy server could not handle the request <em><a href="/AdaptiveAccounts/GetVerifiedStatus">POST&nbsp;/AdaptiveAccounts/GetVerifiedStatus</a></em>.<p> 
    Reason: <strong>Error during SSL Handshake with remote server</strong></p><p /> 
    </body></html> 

を取得しています戻されるようです側。誰にもこの問題がありますか?あなたは私がでTLSv1.2を指定見ることができるように

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
<html><head> 
<title>500 Proxy Error</title> 
</head><body> 
<h1>Proxy Error</h1> 
The proxy server could not handle the request <em><a href="/AdaptiveAccounts/GetVerifiedStatus">POST&nbsp;/AdaptiveAccounts/GetVerifiedStatus</a></em>.<p> 
Reason: <strong>Error during SSL Handshake with remote server</strong></p><p /> 
</body></html> 

:この要求に私熱い反応を

curl 'https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus' -X POST -H 'X-PAYPAL-REQUEST-DATA-FORMAT: NV' -H 'X-PAYPAL-RESPONSE-DATA-FORMAT: NV' -H 'X-PAYPAL-DEVICE-IPADDRESS: 10.10.44.75' -H 'X-PAYPAL-REQUEST-SOURCE: adaptiveaccounts-php-sdk-3.10.2' -H 'User-Agent: PayPalSDK/adaptiveaccounts-php-sdk 3.10.2 (lang=PHP;v=7.0.9;bit=64;os=Linux_2.6.32-042stab103.6;machine=x86_64;openssl=1.0.1e-fips;curl=7.19.7)' -H 'X-PAYPAL-APPLICATION-ID: APP-XXXXXXXXXXXX' -H 'X-PAYPAL-SECURITY-USERID: ikhaldeev-facilitator_api1.dev.football.com' -H 'X-PAYPAL-SECURITY-PASSWORD: XXXXXXXXXXXX' -H'X-PAYPAL-SECURITY-SIGNATURE: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' -d 'accountIdentifier.emailAddress=paypalbiz%40example.com&matchCriteria=NAME&^CrstName=Test&lastName=Test' --tlsv1.2 

は、私は私の問題を再現であるカール要求を作成し、より具体的にはcurlコマンドさらに、TLSv1.2をサポートしていないサーバから同じコマンドを実行すると(このサーバはpaypalで動作しません)、別のエラーが発生します。

curl 'https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus' -X POST -H 'X-PAYPAL-REQUEST-DATA-FORMAT: NV' -H 'X-PAYPAL-RESPONSE-DATA-FORMAT: NV' -H 'X-PAYPAL-DEVICE-IPADDRESS: 10.10.44.75' -H 'X-PAYPAL-REQUEST-SOURCE: adaptiveaccounts-php-sdk-3.10.2' -H 'User-Agent: PayPalSDK/adaptiveaccounts-php-sdk 3.10.2 (lang=PHP;v=7.0.9;bit=64;os=Linux_2.6.32-042stab103.6;machine=x86_64;openssl=1.0.1e-fips;curl=7.19.7)' -H 'X-PAYPAL-APPLICATION-ID: APP-XXXXXXXXXXXX' -H 'X-PAYPAL-SECURITY-USERID: ikhaldeev-facilitator_api1.dev.football.com' -H 'X-PAYPAL-SECURITY-PASSWORD: XXXXXXXXXXXX' -H'X-PAYPAL-SECURITY-SIGNATURE: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' -d 'accountIdentifier.emailAddress=paypalbiz%40example.com&matchCriteria=NAME&^CrstName=Test&lastName=Test' 

応答:あなたは、これは別のエラーで見ることができたとして

curl: (35) SSL connect error 

。私は正しい資格情報、appIdなどを使用します。

答えて

2

このエラーは、サーバーがTLS 1.2プロトコルを使用してHTTPリクエストを送信していないことを意味します。この要求は、PayPalがサンドボックスで必要とするもので、

さらにdetails available here。あなたがTLS 1.2を使用する場合は、最も重要なのは、

あなたは最低限としてはOpenSSL 1.0.1にアップグレードする必要があります、そしてあなたは、6(TLS 1.2)にCURLOPT_SSLVERSIONを設定できるようになります。

SSLリクエスト中にTLS 1.2を自動的に使用するには、PHP 5.5.19+にアップグレードする必要があります(これは理想的な解決策ですが、多くのプロジェクトは古いPHPバージョンで行われています)。

もちろん、PHPを使用しているとします。そうでない場合は、使用しているソフトウェアスタックでTLS 1.2を動作させる必要があります。

+0

TLS 1.2サポートがあります。私はそれが私たちの側にない問題のように見えるように詳細を追加しました。 – user1381425

+0

私はPHP 7.0.9を使用しています – user1381425

+0

コマンドラインのカール要求を実行することに慣れていないので、--tls1.2フラグが動作するかどうかはわかりませんが、 PayPalがサンドボックスで変更を加えてから何回もSSLハンドシェークエラーが発生したと言いますが、TLS 1.2が使用されていなかったためです。 –

関連する問題