0

重複の可能性:
プロトコル https がサポートされていないか、libcurl で無効になっている

PHP内でcurlを使用してhttps経由でサイトに接続しようとしています。

<?php
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, 'https://api-3t.paypal.com/nvp');
  $response = curl_exec($ch);
  curl_close($ch);
?>

curl は次のように戻ります

* Protocol https not supported or disabled in libcurl

ただし、コマンド ライン経由で curl を使用すると問題なく動作します

  # curl https://api-3t.paypal.com/nvp

CentOS 5.8、WHM 11.32.2 を実行しています

# curl-config --features
SSL
IPv6
libz
IDN
NTLM


# curl-config --protocols
HTTP
HTTPS
FTP
FTPS
FILE
TELNET
LDAP
DICT
TFTP
NTLM
4

2 に答える 2

0

php.iniで拡張機能php_socketsを有効にします

于 2012-05-19T09:56:50.747 に答える
0

コマンドラインから実行しているcurlバイナリは 1 つです。curl_*()ただし、PHP から呼び出している関数とはほとんど独立しています。

curl-command line ツールから利用できる機能は、(お気づきのように)必ずしも PHP から利用できるとは限りません。

ここでは、おそらく PHP を再コンパイルして、SSL サポート付きでコンパイルされていることを確認する必要があります。

于 2012-05-19T09:59:11.177 に答える