cURL (最新バージョン) を使用して支払い用のセキュア ゲートウェイに接続するサイトがあります。
問題は、cURL が常に長さ 0 のコンテンツを返すことです。ヘッダーのみを取得します。そして、ヘッダーを返すようにcURLを設定した場合のみ。以下のフラグを立てています。
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $gatewayURI);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_POST, 1);
返されるヘッダーは
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
Date: Tue, 25 Nov 2008 01:08:34 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Length: 0
Content-Type: text/html
Set-Cookie: ASPSESSIONIDxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx; path=/
Cache-control: private
また、さまざまなサイトを cURL'ing しようとしましたが、それらはコンテンツを正常に返します。問題はhttps接続に関係している可能性があると思います。
私は会社と話しましたが、彼らは役に立ちません。
他の誰かがこのエラーを経験し、回避策を知っていますか? cURL を捨てて、試して使用する必要がありますfsockopen()
か?
ありがとうございました。:)