私は、集中型サインオンに対して認証を行うサイトをローカルで開発しています。手順の 1 つは、アクセス トークンを取得するために https リソースに対して curl 要求を行うことです。
curl 構成の一部は次のとおりです。
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
//curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
ご覧のとおり、CURLOPT_SSL_VERIFYHOST オプションをコメントアウトしました。私は php.net とさまざまなブログ/stackoverflow ( CURLOPT_SSL_VERIFYHOST (libcurl/openssl) を無効にすることによるセキュリティの影響) の投稿で、これらのオプションの意味を読みました。
私の開発マシンCURLOPT_SSL_VERIFYHOST 2
では正常に動作しています。ubuntu 12.04 php5 パッケージで提供されているバニラ php インストールと php5-curl を使用しています。
実稼働環境 (ラックスペース クラウドサイト) ではCURLOPT_SSL_VERIFYHOST 2
が機能していないため、これが問題であることを確認するために false に変更しました。ローカルホストでこれを有効にするために明示的に何もしなかったので、これを制御するディレクティブ/構成オプションがわかりません。
「機能していない」というのは、本番環境では、が に設定されているときにcurl 呼び出しがhttp_code
を返しているということです。に設定すると、ステータスコードが返されます0
VERIFYHOST
2
FALSE
200
私の質問は:
SSL_VERIFYHOST
Linux ボックスで有効にするにはどうすればよいですか?
どんな助けでも大歓迎です。ありがとうございました。