Skip to content

PHPでcURLのエラー番号とエラーメッセージを出したい

cURLのエラー番号を出したいために、curl_errnoを使います。

 

 

エラーコード一覧

CURLcode

CURLE_OK (0)

正常終了

 

CURLE_UNSUPPORTED_PROTOCOL (1)

libcurlに渡したURLは、サポートしていないプロトコルを使用していました。 使用しなかったコンパイル時のオプションかもしれません、それは間違ったプロトコル文字列か、単にlibcurlにコードがないプロトコルかもしれません。

 

CURLE_FAILED_INIT (2)

初期化に失敗。 これは内部的なエラーや問題、あるいはinit時に何か基本的なことができなかったリソースの問題である可能性があります。

 

CURLE_URL_MALFORMAT (3)

URL形式が正しくない。

 

CURLE_NOT_BUILT_IN (4)

libcurlに、ビルド時、要求された機能、プロトコル、またはオプションが組み込まれていませんでした。 libcurlがビルドされたときに、機能やオプションが有効になっていない、明示的に無効になっていないなど。機能させるためには、libcurlを再構築する必要があります。

 

CURLE_COULDNT_RESOLVE_PROXY (5)

プロキシを解決できませんでした。 指定されたプロキシホストを解決できませんでした。

 

CURLE_COULDNT_RESOLVE_HOST (6)

ホストを解決できませんでした。 指定されたリモートホストは解決されませんでした。

 

CURLE_COULDNT_CONNECT (7)

ホストまたはプロキシへの接続に失敗しました。

 

CURLE_FTP_WEIRD_SERVER_REPLY (8)

サーバーがlibcurlのデータを解析できませんでした。 このエラーコードはFTPで使用されており、7.51.0以降はCURLE_WEIRD_SERVER_REPLYとしてエイリアスされています。

 

CURLE_REMOTE_ACCESS_DENIED (9)

URLに記載されているリソースへのアクセスが拒否されました。
FTPの場合、これはリモートディレクトリに変更しようとしているときに発生します。

 

CURLE_FTP_ACCEPT_FAILED (10)

アクティブなFTPセッションが使用されているときにサーバーが再び接続するのを待つ間、
コントロール接続などでエラーコードが送信されました。

 

CURLE_FTP_WEIRD_PASS_REPLY (11)

サーバーにFTPパスワードを送信した後、libcurlは適切な応答を期待します。
このエラーコードは、予期しないコードが返されたことを示します。

 

CURLE_FTP_ACCEPT_TIMEOUT (12)

サーバーの接続を待機している間にアクティブなFTPセッション中に、
CURLOPT_ACCEPTTIMEOUT_MS(または内部デフォルト)タイムアウトが切れました。

 

CURLE_FTP_WEIRD_PASV_REPLY(13)

libcurlは、PASVコマンドまたはEPSVコマンドのいずれかに対する応答として、
サーバーから正しい結果を得ることに失敗しました。サーバーに欠陥があります。

 

CURLE_FTP_WEIRD_227_FORMAT(14)

FTPサーバーは、PASVコマンドへの応答として227行を返します。
libcurlがその行を解析できない場合、コードは返されます。

 

CURLE_FTP_CANT_GET_HOST(15)

新しい接続に使用されたホストをルックアップするための内部エラー。

 

CURLE_HTTP2(16)

HTTP2フレーミング層で問題が検出されました。これはやや一般的なものであり、いくつかの問題のうちの1つになる可能性があります。詳細はエラーバッファを参照してください。

 

CURLE_FTP_COULDNT_SET_TYPE(17)

転送モードをバイナリまたはASCIIに設定しようとしたときにエラーになりました。

 

CURLE_PARTIAL_FILE(18)

ファイル転送が予想よりも短くなったり、大きかったりする時にエラーになります。これは、サーバーが最初に予想される転送サイズを報告し、以前に指定されたサイズと一致しないデータを配信する場合に発生します。

 

CURLE_FTP_COULDNT_RETR_FILE(19)

これは、「RETR」コマンドへのおかしな応答か、ゼロバイト転送が完了したかのいずれかです。

 

CURLE_QUOTE_ERROR(21)

カスタム “QUOTE”コマンドをリモートサーバーに送信すると、コマンドの1つが400以上のエラーコード(FTPの場合)を返したか、またはコマンドの失敗した完了が示されました。

 

CURLE_HTTP_RETURNED_ERROR(22)

これは、CURLOPT_FAILONERRORがTRUEに設定され、HTTPサーバーが400エラーを応答した場合に返されます。

 

CURLE_WRITE_ERROR(23)

受信したデータをローカルファイルに書き込むときにエラーが発生したか、
書き込みコールバックからエラーがlibcurlに返されました。

 

CURLE_UPLOAD_FAILED(25)

アップロードの開始に失敗しました。 FTPの場合、通常、サーバーはSTORコマンドを拒否します。
エラーバッファ ーにはサーバーの説明が含まれています。

 

CURLE_READ_ERROR(26)

ローカルファイルを読み込む際に問題が発生したか、または読み込みコールバックによって返されたエラーです。

 

CURLE_OUT_OF_MEMORY(27)

メモリ割り当て要求が失敗しました。これは最悪なことであり、これが起こると物事は悪くなります。

 

CURLE_OPERATION_TIMEDOUT(28)

操作タイムアウト。タイムアウト時間は、条件で指定されます。

 

CURLE_FTP_PORT_FAILED(30)

FTP PORTコマンドがエラーを返しました。libcurlに十分なアドレスを指定していないときに発生します。CURLOPT_FTPPORTを参照してください。

 

CURLE_FTP_COULDNT_USE_REST(31)

FTP RESTコマンドがエラーを返しました。サーバーが正常であれば、これは起こりません。

 

CURLE_RANGE_ERROR(33)

サーバーは受け入れ範囲要求をサポートしていません。

 

CURLE_HTTP_POST_ERROR(34)

内部に発生する奇妙なエラー

 

CURLE_SSL_CONNECT_ERROR(35)

SSL / TLSハンドシェイクのどこかで問題が発生しました。エラーバッファを実際に必要とし、
問題を絞って特定してメッセージを読んでください。証明書(ファイル形式、パス、アクセス許可)、
パスワードなどがあります。

 

CURLE_BAD_DOWNLOAD_RESUME(36)

指定されたオフセットがファイル境界外にあるため、ダウンロードを再開できませんでした。

 

CURLE_FILE_COULDNT_READ_FILE(37)

FILE://で指定されたファイルを開くことができませんでした。ほとんどの場合、ファイルパスは既存のファイルを識別しないためです。ファイルのアクセス許可をチェックしましたか?

 

CURLE_LDAP_CANNOT_BIND(38)

LDAPはバインドできません。 LDAPバインド操作が失敗しました。

 

CURLE_LDAP_SEARCH_FAILED(39)

LDAP検索に失敗しました。

 

CURLE_FUNCTION_NOT_FOUND(41)

機能が見つかりません。必要なzlib関数が見つかりませんでした。

 

CURLE_ABORTED_BY_CALLBACK(42)

コールバックによって中止されました。コールバックはlibcurlに “abort”を返しました。

 

CURLE_BAD_FUNCTION_ARGUMENT(43)

内部エラー。不正なパラメータで関数が呼び出されました。

 

CURLE_INTERFACE_FAILED(45)

インタフェースエラー。指定された発信インターフェイスを使用できませんでした。
CURLOPT_INTERFACEを使用して、発信接続の送信元IPアドレスに使用するインターフェイスを設定します。

 

CURLE_TOO_MANY_REDIRECTS(47)

リダイレクトが多すぎます。リダイレクト後、libcurlが最大値に達しました。
CURLOPT_MAXREDIRSで上限を設定してください。

 

CURLE_UNKNOWN_OPTION(48)

libcurlに渡されるオプションは認識されません。適切な文書を参照してください。これは、おそらくlibcurlを使用するプログラムの問題です。エラーバッファーには、正確なオプションに関するより具体的な情報が含まれている場合があります。

 

CURLE_TELNET_OPTION_SYNTAX(49)

telnetオプション文字列が不正にフォーマットされました。

 

CURLE_PEER_FAILED_VERIFICATION(51)

リモートサーバーのSSL証明書またはSSH md5フィンガープリントはOKではないとみなされました。

 

CURLE_GOT_NOTHING(52)

何もサーバーから返されなかったため、何も取得していないというエラー。

 

CURLE_SSL_ENGINE_NOTFOUND(53)

指定された暗号エンジンが見つかりませんでした。

 

CURLE_SSL_ENGINE_SETFAILED(54)

選択したSSL暗号エンジンをデフォルトとして設定できませんでした!

 

CURLE_SEND_ERROR(55)

ネットワークデータの送信に失敗しました。

 

CURLE_RECV_ERROR(56)

ネットワークデータを受信すると失敗します。

 

CURLE_SSL_CERTPROBLEM(58)

ローカルクライアント証明書の問題。

 

CURLE_SSL_CIPHER(59)

指定された暗号を使用できませんでした。

 

CURLE_SSL_CACERT(60)

ピア証明書は、既知のCA証明書では認証できません。

 

CURLE_BAD_CONTENT_ENCODING(61)

認識されない転送エンコーディング。

 

CURLE_LDAP_INVALID_URL(62)

LDAP URLが無効です。

 

CURLE_FILESIZE_EXCEEDED(63)

最大ファイルサイズを超えました。

 

CURLE_USE_SSL_FAILED(64)

要求されたFTP SSLレベルが失敗しました。

 

CURLE_SEND_FAIL_REWIND(65)

送信を行うときに、cURLはデータを巻き戻して再送することがありますが、巻き戻し操作が失敗しました。

 

CURLE_SSL_ENGINE_INITFAILED(66)

SSLエンジンの起動に失敗しました。

 

CURLE_LOGIN_DENIED(67)

リモートサーバがcURLを拒否してログインしました(7.13.1で追加)

 

CURLE_TFTP_NOTFOUND(68)

TFTPサーバ上にファイルが見つかりません。

 

CURLE_TFTP_PERM(69)

TFTPサーバでの許可の問題。

 

CURLE_REMOTE_DISK_FULL(70)

サーバーのディスク領域が不足しています。

 

CURLE_TFTP_ILLEGAL(71)

不正なTFTP操作。

 

CURLE_TFTP_UNKNOWNID(72)

不明なTFTP転送ID。

 

CURLE_REMOTE_FILE_EXISTS(73)

ファイルはすでに存在し、上書きできません。

 

CURLE_TFTP_NOSUCHUSER(74)

このエラーは、正しく機能するTFTPサーバーによって返されるべきではありません。

 

CURLE_CONV_FAILED(75)

文字の変換に失敗しました。

 

CURLE_CONV_REQD(76)

呼び出し元は変換コールバックを登録する必要があります。

 

CURLE_SSL_CACERT_BADFILE(77)

SSL CA証明書を読む際の問題(パス?アクセス権?)

 

CURLE_REMOTE_FILE_NOT_FOUND(78)

URLで参照されているリソースが存在しません。

 

CURLE_SSH(79)

SSHセッション中に不特定のエラーが発生しました。

 

CURLE_SSL_SHUTDOWN_FAILED(80)

SSL接続をシャットダウンできませんでした。

 

CURLE_AGAIN(81)

ソケットは準備ができてから再試行するまで、send / recvを待つ準備ができていません。この戻りコードは、curl_easy_recvおよびcurl_easy_send(7.18.2で追加)からのみ返されます。

 

CURLE_SSL_CRL_BADFILE(82)

CRLファイルの読み込みに失敗しました(7.19.0で追加)

 

CURLE_SSL_ISSUER_ERROR(83)

発行者の確認に失敗しました(7.19.0で追加)

 

CURLE_FTP_PRET_FAILED(84)

FTPサーバーは、PRETコマンドを全く理解していないか、または指定された引数をサポートしていません。 CURLOPT_CUSTOMREQUESTを使用するときは注意してください。カスタムLISTコマンドは、PASVの前にPRET CMDとともに送信されます。 (7.20.0で追加)

 

CURLE_RTSP_CSEQ_ERROR(85)

RTSP CSeq番号の不一致。

 

CURLE_RTSP_SESSION_ERROR(86)

RTSPセッション識別子の不一致。

 

CURLE_FTP_BAD_FILE_LIST(87)

FTPファイルリストを解析できません(FTPワイルドカードダウンロード中)。

 

CURLE_CHUNK_FAILED(88)

チャンクコールバックがエラーを報告しました。

 

CURLE_NO_CONNECTION_AVAILABLE(89)

(内部使用のみのため、libcurlから返されることはありません)接続は使用できません。セッションはキューに入れられます。 (7.30.0で追加)

 

CURLE_SSL_PINNEDPUBKEYNOTMATCH(90)

CURLOPT_PINNEDPUBLICKEYで指定された固定キーとの一致に失敗しました。

 

CURLE_SSL_INVALIDCERTSTATUS(91)

CURLOPT_SSL_VERIFYSTATUSで尋ねられたときにステータスが失敗を返しました。

 

CURLE_HTTP2_STREAM(92)

HTTP / 2フレーミング層のストリームエラー。

 

CURLE_RECURSIVE_API_CALL(93)

コールバック内からAPI関数が呼び出されました。

 

CURLE_OBSOLETE

古いlibcurlバージョンで使用されていたエラー、現在は使用されていません。

 

CURLMcode

これは、libcurlマルチインタフェースの関数が使用する一般的なリターンコードです。
curl_multi_strerrorも考慮してください。

 

CURLM_CALL_MULTI_PERFORM(-1)

これは実際にはエラーではありません。これは、select()などを使わずにcurl_multi_performを再度呼び出す必要があることを意味します。バージョン7.20.0より前では、これはcurl_multi_performによって返される可能性がありますが、それ以降のバージョンではこの戻りコードは使用されません。

 

CURLM_OK(0)

正常。

 

CURLM_BAD_HANDLE(1)

渡されたハンドルは、有効なCURLMハンドルではありません。

 

CURLM_BAD_EASY_HANDLE(2)

ハンドルは有効ではなかった。これは簡単なハンドルではなく、おそらくこのハンドルが既にハンドルされているまたは別のマルチハンドルによって使用されていることを意味する可能性があります。

 

CURLM_OUT_OF_MEMORY(3)

You are doomed.

 

CURLM_INTERNAL_ERROR(4)

これは、libcurlのバグがある場合にのみ返されます。報告してあげてください。
https://curl.haxx.se/libcurl/c/libcurl.html

 

CURLM_BAD_SOCKET(5)

渡されたソケットは、libcurlが有効なソケットではありません。 (7.15.4で追加)

 

CURLM_UNKNOWN_OPTION(6)

サポートされていないオプションのcurl_multi_setopt()(7.15.4で追加)

 

CURLM_ADDED_ALREADY(7)

マルチハンドルにすでに追加されている簡単なハンドルが、
もう一度追加されるように試さされました。 (7.32.1で追加)

 

CURLM_RECURSIVE_API_CALL(8)

コールバック内からAPI関数が呼び出されました。

 

CURLSHcode

「共有」インターフェースは、エラーが発生したときを示すためにCURLSHコードを返します。
curl_share_strerrorも参照してください。

CURLSHE_OK(0)

正常。

 

CURLSHE_BAD_OPTION(1)

無効なオプションが関数に渡されました。

 

CURLSHE_IN_USE(2)

共有オブジェクトは現在使用中です。

 

CURLSHE_INVALID(3)

無効な共有オブジェクトが関数に渡されました。

 

CURLSHE_NOMEM(4)

十分なメモリが利用できませんでした。 (7.12.0で追加)

 

CURLSHE_NOT_BUILT_IN(5)

使用しているライブラリにそのpartiがないため、要求された共有を実行できませんでした。

 

 

Be First to Comment

コメントを残す

%d人のブロガーが「いいね」をつけました。