私はcurlを使用してphpでWebサービスを呼び出しています。しかし、サーバーサイドの場所でIIS7の私のサイトが変更され、安全になりました。
そのため、Webサービスを呼び出すときに問題が発生します。次のエラー発生:
HTTPエラー401.2-無許可
認証ヘッダーが無効なため、このページを表示する権限がありません。
ユーザーの資格情報を渡す方法がわかりません。問題とその対処方法を教えてください。
私はcurlを使用してphpでWebサービスを呼び出しています。しかし、サーバーサイドの場所でIIS7の私のサイトが変更され、安全になりました。
そのため、Webサービスを呼び出すときに問題が発生します。次のエラー発生:
HTTPエラー401.2-無許可
認証ヘッダーが無効なため、このページを表示する権限がありません。
ユーザーの資格情報を渡す方法がわかりません。問題とその対処方法を教えてください。
これらのオプションを追加します。お役に立てば幸いです=)
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, $username.':'.$password);
【参考】:CURLOPT_HTTPAUTH
使用するHTTP認証方法。オプションは、CURLAUTH_BASIC、CURLAUTH_DIGEST、CURLAUTH_GSSNEGOTIATE、CURLAUTH_NTLM、CURLAUTH_ANY、およびCURLAUTH_ANYSAFEです。
ビットごと| (または)演算子を使用して、複数のメソッドを組み合わせることができます。これが行われると、cURLはサーバーをポーリングして、サポートされているメソッドを確認し、最適なメソッドを選択します。
CURLAUTH_ANYは、CURLAUTH_BASIC|のエイリアスです。CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM。
CURLAUTH_ANYSAFEは、CURLAUTH_DIGEST|のエイリアスです。CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM。