CURLOPT_ABSTRACT_UNIX_SOCKET |
ホストにTCP接続する代わりに、抽象化されたUnixドメインソケットの使用を有効にし、
パスを指定された string に設定します。
このオプションは CURLOPT_UNIX_SOCKET_PATH
と同じセマンティクスを共有しています。
これらのふたつのオプションは同じストレージを共有するので、
ハンドルごとにそれらのうちのひとつだけを設定できます。
|
cURL 7.53.0 で追加されました。PHP 7.3.0 以降で利用可能です。
|
CURLOPT_ALTSVC |
Alt-Svc キャッシュとして使うファイル名を cURL に指定します。
これは既存のキャッシュコンテンツを読み取る目的で使います。
また、通信が完了した後に書き込む可能性があります。
書き込むのは、CURLALTSVC_READONLYFILE
が CURLOPT_ALTSVC_CTRL
経由で設定されていない場合に限ります。
|
|
CURLOPT_ALTSVC_CTRL |
このハンドルを使って転送する際に、Alt-Svc をどう扱うかを
cURL に指示するために、有効な機能をまとめてビットマスクで指定します。
cURL は Alt-Svc ヘッダを HTTPS の場合にのみ受け入れます。
origin が HTTPS で適切にホストされている場合にのみ、cURL は別のオリジンへのリクエストも完了できます。
以下のいずれかのビットを設定すると、Alt-Svc エンジンは有効になります。
オプションは以下のとおりです:
CURLALTSVC_H1 ,
CURLALTSVC_H2 ,
CURLALTSVC_H3 および
CURLALTSVC_READONLYFILE
|
|
CURLOPT_AWS_SIGV4 |
AWS V4 signature authentication を、HTTP(S) ヘッダで指定します。
このオプションは、CURLOPT_HTTPAUTH
で設定されている他のあらゆる認証タイプを上書きします。
このメソッドは、他の認証タイプと組み合わせることができません。
|
|
CURLOPT_CAINFO |
接続先を検証するための証明書を保持するファイル名。
これは CURLOPT_SSL_VERIFYPEER を使用する場合に
のみ意味を持ちます。
|
絶対パスで指定しなければならないでしょう。
|
CURLOPT_CAINFO_BLOB |
接続先を検証するための、ひとつ以上の証明書保持するPEMファイルの名前。
このオプションは、CURLOPT_CAINFO
を上書きします。
|
PHP 8.2.0 と、cURL 7.77.0 以降で利用可能です。
|
CURLOPT_CAPATH |
複数の証明書ファイルを保持するディレクトリ。このオプションは
CURLOPT_SSL_VERIFYPEER とともに使用します。
|
|
CURLOPT_COOKIE |
HTTP リクエストにおける
"Cookie: " ヘッダの内容。
クッキーが複数ある場合は、セミコロンとスペースで区切られる
(例 "fruit=apple; colour=red ")
ことに注意しましょう。
|
|
CURLOPT_COOKIEFILE |
クッキーのデータを保持するファイルの名前。クッキーファイルは、
Netscape フォーマットあるいは
HTTP ヘッダを単純にファイルにダンプしたものが使用可能です。
名前が空文字列の場合はクッキーを読み込みませんが、クッキーの処理は有効なままです。
|
|
CURLOPT_COOKIEJAR |
ハンドルを閉じる際 (curl_close のコール後など) に、
すべての内部クッキーを保存するファイルの名前。
|
|
CURLOPT_COOKIELIST |
内部的な Cookie ストアに追加するCookie文字列(つまり、NetScape/Mozilla フォーマット または
HTTP形式の Set-Cookieヘッダ)。
"ALL" の場合、メモリに保持している全てのクッキーを削除します。
"SESS" の場合、メモリに保持している全てのセッションクッキーを削除します。
"FLUSH" の場合、CURLOPT_COOKIEJAR で指定されたファイルに全ての既知の Cooie を書き込みます。
"RELOAD" の場合、CURLOPT_COOKIEFILE で指定されたファイルから全てのクッキーを読み込みます。
|
cURL 7.14.1 以降で利用可能です。
|
CURLOPT_CUSTOMREQUEST |
HTTP リクエストで
"GET" あるいは "HEAD" 以外に
使用するカスタムメソッド。これが有用なのは、"DELETE"
やその他のあまり知られていない HTTP リクエストを実行する場合です。
使用可能な値は "GET" 、
"POST" 、"CONNECT" などです。
HTTP リクエストの内容をすべて指定するわけではありません。つまり、
"GET /index.html HTTP/1.0\r\n\r\n" のような
記述は間違いだということです。
注意:
使用しようとしているメソッドをサーバーがサポートしていることを
確かめるまで、これを使用しないでください。
|
|
CURLOPT_DEFAULT_PROTOCOL |
URL にスキーム名がなかった場合のデフォルトのプロトコル
|
cURL 7.45.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_DNS_INTERFACE |
DNS リゾルバがバインドするべきネットワークインターフェイス名を設定します。
これは、(アドレスではなく)インターフェイス名でなければなりません。
|
cURL 7.33.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_DNS_LOCAL_IP4 |
リゾルバがバインドするべきローカルの IPv4 アドレスを設定します。
この値は、数値の IPv4 アドレスを文字列で含めるべきです。
|
cURL 7.33.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_DNS_LOCAL_IP6 |
リゾルバがバインドするべきローカルの IPv6 アドレスを設定します。
この値は、数値の IPv6 アドレスを文字列で含めるべきです。
|
cURL 7.33.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_EGDSOCKET |
CURLOPT_RANDOM_FILE と似ていますが、
Entropy Gathering Daemon ソケットを使用してファイル名を生成する点が
違います。
|
|
CURLOPT_ENCODING |
"Accept-Encoding: " ヘッダの内容。
これにより、応答のデコードを可能にします。サポートされる
エンコーディングは "identity" 、
"deflate" および "gzip"
です。もし空文字列 "" が指定された場合、
サポートされるエンコーディングをすべて含むヘッダが送信されます。
|
cURL 7.10 で追加されました。
|
CURLOPT_FTPPORT |
FTP で "PORT" を使用するための IP アドレスを取得する際に使用される値。
"PORT" は、リモートサーバーに対してこちらが指定した IP アドレスに
接続するよう指示します。この値に設定できる内容は IP アドレス、ホスト名、
ネットワークインターフェイス名(Unix)、あるいは単に '-' を指定する
ことでシステムのデフォルト IP アドレスを指定します。
|
|
CURLOPT_HSTS |
HSTS (HTTP Strict Transport Security) が用いるキャッシュファイル名
|
|
CURLOPT_HSTS_CTRL |
HSTS (HTTP Strict Transport Security) の振る舞いを制御します。
このハンドルを使って転送する際に、HSTS をどう扱うかを
cURL に指示するために、有効な機能をまとめてビットマスクで指定します。
CURLHSTS_ENABLE
を使うと、インメモリのキャッシュが有効になります。
HSTS のキャッシュファイルが指定されると、
CURLHSTS_READONLYFILE
を使うことで、ファイルを読み取り専用にできます。
|
|
CURLOPT_INTERFACE |
使用するネットワークインターフェイスの名前。
インターフェイス名、IP アドレスあるいはホスト名が指定可能です。
|
|
CURLOPT_KEYPASSWD |
CURLOPT_SSLKEY
あるいは CURLOPT_SSH_PRIVATE_KEYFILE 秘密鍵を使うときに必須となるパスワード。
|
cURL 7.16.1 で追加されました。
|
CURLOPT_KRB4LEVEL |
KRB4(Kerberos 4)セキュリティレベル。以下の値のいずれか
(セキュリティの低い順です)が指定可能です。
"clear" 、
"safe" 、
"confidential" 、
"private" 。
文字列がこれらのどれでもなかった場合は、
"private" が使用されます。このオプションを null
にすると KRB4 セキュリティを無効にします。現時点では、KRB4
セキュリティは FTP 転送にのみ使用可能です。
|
|
CURLOPT_LOGIN_OPTIONS |
プロトコル特有のログインオプションを設定するために使えます。
たとえば好ましい認証メカニズムが "AUTH=NTLM" とか "AUTH=*" の場合で、
CURLOPT_USERNAME オプションと組み合わせて使うべき場合です。
|
cURL 7.34.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_PINNEDPUBLICKEY |
ピン止めされた公開鍵を設定します。
ピン止めされた公開鍵のファイル名ファイル名を文字列として指定できます。
期待されているファイルフォーマットは "PEM" または "DER" 形式です。
文字列は、 base64 エンコードされた sha256 ハッシュで、
"sha256//" が先頭に付いたものです。これを任意の数だけ指定でき、
";" で区切られます。
|
cURL 7.39.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_POSTFIELDS |
HTTP "POST" で送信するすべてのデータ。
このパラメータは
'para1=val1¶2=val2&... '
のように url エンコードされた文字列形式で渡すこともできますし、
フィールド名をキー、データを値とする配列で渡すこともできます。
value が配列の場合、
Content-Type ヘッダには
multipart/form-data を設定します。
ファイルは CURLFile または CURLStringFile を使って送信することが出来ます。
この場合、value は配列でなければなりません。
|
|
CURLOPT_PRIVATE |
この cURL ハンドルに関連づけるデータ。ここで関連づけたデータは、
curl_getinfo() の
CURLINFO_PRIVATE オプションで取得できます。
cURL はデータを一切加工しません。
cURL マルチハンドルを使う場合は一般的に、この値が cURL ハンドルを特定する一意なキーとなります。
|
cURL 7.10.3 で追加されました。
|
CURLOPT_PRE_PROXY |
CURLOPT_PROXY で指定された HTTP(S) プロキシにcurlが接続する前に、
事前に接続する preproxy を設定します。
この値には、ホスト名またはドットで区切られた数値のIPアドレスを設定します。
preproxy は SOCKS プロキシだけがなることができ、
どの socks を使うかを指定するために [scheme]:// を先頭に付けます。
数値の IPv6 アドレスは 角括弧 "[]" 内に書かなければいけません。
preproxy にから文字列を設定すると、明示的に preproxy を無効にできます。
この文字列にポート番号を設定するには、
ホスト名の最後に :[port] を追加します。
プロキシのポート番号は別のオプション CURLOPT_PROXYPORT
で指定しても構いません。ポート番号を指定しない場合は、
デフォルトでは 1080 を使います。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY |
リクエストを経由させる HTTP プロキシ。
|
|
CURLOPT_PROXY_SERVICE_NAME |
プロキシ認証サービス名
|
HTTP プロキシについては、cURL 7.43.0 で追加されました。
SOCKS5 プロキシについては、cURL 7.49.0 で追加されました。
PHP 7.0.7 以降で利用可能です。
|
CURLOPT_PROXY_CAINFO |
プロキシの Certificate Authority (CA) バンドルのパスを指定します。
HTTPS プロキシを検証するための証明書をひとつ以上持つ、ファイルの名前を文字列で設定します。
このオプションは HTTPS プロキシに接続するためのものであって、
HTTPS サーバーに接続するためのものではありません。
デフォルトは、libcurl が cacert バンドルを保存していると想定しているシステムパスに設定されています。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_CAINFO_BLOB |
HTTPS プロキシを検証するための証明書をひとつ以上持つ、PEMファイルの名前を設定します。
このオプションは HTTPS プロキシに接続するためのものであって、
HTTPS サーバーに接続するためのものではありません。
デフォルトは、libcurl が cacert バンドルを保存していると想定しているシステムパスに設定されています。
|
PHP 8.2.0 以降および、cURL >= 7.77.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_CAPATH |
HTTPSプロキシを検証するための複数のCA証明書が置かれたディレクトリ。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_CRLFILE |
PEMフォーマットの CRL (Certificate Revocation List, 証明書失効リスト)
を連結したファイル名を設定します。
これはSSL通信の際に行われる証明書の検証に使います。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_KEYPASSWD |
CURLOPT_PROXY_SSLKEY で設定する秘密鍵で使う、
必須のパスワードを設定します。
証明書を読み込むのにパスフレーズは不要ですが、
秘密鍵を読み込むにはパスフレーズが必要です。
このオプションはHTTPSプロキシに接続するために必要です。
HTTPSサーバーに接続するためのものではありません。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_PINNEDPUBLICKEY |
HTTPSプロキシ向けの pinned public key を設定します。
pinned public key のファイル名を文字列で設定できます。
ファイルフォーマットは "PEM" または "DER" です。
base64 エンコードされた sha256 ハッシュ を任意の数だけ
"sha256//" の後に続けることもできます。このハッシュは ";" で区切ります。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_SSLCERT |
HTTPSプロキシに接続する時に使うクライアント証明書のフォーマット。
デフォルトは Secure Transport の場合 "P12" で、
それ以外のエンジンでは "PEM" ですが、
CURLOPT_PROXY_SSLCERTTYPE でも変更できます。
NSS や Secure transport では、
セキュリティデータベースで名付けられた証明書のニックネームも設定できます。
現在のディレクトリにあるファイルを使いたい場合は、
ニックネームとの混乱を避けるため "./" をプレフィックスとして付けてください。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_SSLCERTTYPE |
HTTPSプロキシに接続する時に使うクライアント証明書のフォーマット。
サポートされているのは "PEM" と "DER" ですが、
Secure Transport はこれらをサポートしていません。
OpenSSL (0.9.3 以降) と Secure Transport
(iOS 5 以降, または OS X 10.7 以降) では PKCS#12-encoded ファイル向けに
"P12" もサポートしています。デフォルトは "PEM" です。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_SSL_CIPHER_LIST |
HTTPSプロキシと接続を確立するために使う暗号スイートの一覧。
この一覧はひとつ以上の暗号スイートの文字列がコロンで区切られており、
構文的に正しくなければなりません。
コンマやスペースも区切り文字としては有効ですが、通常はコロンが使われます。
!, - および + が演算子として使えます。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_TLS13_CIPHERS |
TLS 1.3 接続をプロキシと確立するために使う暗号スイートの一覧。
この一覧はひとつ以上の暗号スイートの文字列がコロンで区切られており、
構文的に正しくなければなりません。
現状、このオプションはcurlが OpenSSL 1.1.1 以降とビルドされた時にだけ使われています。
OpenSSL 以外のSSLバックエンドを使っている場合は、
CURLOPT_PROXY_SSL_CIPHER_LIST オプションを使って
TLS 1.3 の暗号スイートを設定できます。
|
PHP 7.3.0 以降 および cURL >= 7.61.0 と OpenSSL >= 1.1.1 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_SSLKEY |
HTTPSプロキシに接続するのに使う秘密鍵のファイル名。
デフォルトのフォーマットは "PEM" で、
そのフォーマットは CURLOPT_PROXY_SSLKEYTYPE で変更できます。
(iOS と Mac OS X のみ) Secure Transport を使って curl がビルドされている場合、
このオプションは無視されます。
|
PHP 7.3.0 以降 および cURL >= 7.61.0 をビルドした場合、
かつ TLS が有効な場合にのみ使用可能です。
|
CURLOPT_PROXY_SSLKEYTYPE |
秘密鍵のフォーマット。"PEM", "DER" および "ENG" がサポートされています。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_TLSAUTH_PASSWORD |
CURLOPT_PROXY_TLSAUTH_TYPE オプションで指定したTLS認証メソッド
で使うパスワード。
CURLOPT_PROXY_TLSAUTH_USERNAME オプションも設定する必要があります。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_TLSAUTH_TYPE |
HTTPS接続で使うTLS認証メソッド。
"SRP" がサポートされています。
注意:
TLS の Secure Remote Password (SRP) 認証は、
ローカルとリモートの双方が共通のシークレットを持っている場合に、
お互いを認証する方法を提供します。
TLS-SRP を使うためには、
CURLOPT_PROXY_TLSAUTH_USERNAME と
CURLOPT_PROXY_TLSAUTH_PASSWORD オプションも設定する必要があります。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXY_TLSAUTH_USERNAME |
CURLOPT_PROXY_TLSAUTH_TYPE オプションで指定された
HTTPSプロキシのTLS認証メソッドで使うユーザー名。
CURLOPT_PROXY_TLSAUTH_PASSWORD オプションも設定する必要があります。
|
PHP 7.3.0 以降 および cURL >= 7.52.0 をビルドした場合に使用可能です。
|
CURLOPT_PROXYUSERPWD |
プロキシに接続するためのユーザー名とパスワード。
"[username]:[password]" 形式で指定します。
|
|
CURLOPT_RANDOM_FILE |
使用するファイル名を、SSL の乱数生成器を使用して作成します。
|
|
CURLOPT_RANGE |
取得するデータの範囲を
"X-Y" 形式で指定します。X あるいは Y は省略可能です。
HTTP 転送では、いくつかの範囲をカンマで区切った
"X-Y,N-M" のような形式もサポートしています。
|
|
CURLOPT_REFERER |
HTTP リクエストで使用される "Referer: "
ヘッダの内容。
|
|
CURLOPT_SASL_AUTHZID |
通信に用いる authorization identity (authzid) を指定します。
PLAIN SASL 認証メカニズムの場合にのみ適用できますが、これはオプションです。
指定されない場合は、
ユーザー名のみを指定した authentication identity(authcid) のみを、パスワードと一緒にサーバーに送信します。
サーバーは authzid が指定されない場合、authcid から authzid を導出し、内部的に用います。
|
|
CURLOPT_SERVICE_NAME |
認証サービス名
|
cURL 7.43.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 |
32 桁の十六進文字列。この文字列は、リモートホストの公開鍵の MD5 チェックサムでなければなりません。
md5sum がマッチしない限り、libcurl はホストとの接続を拒否します。
このオプションは、SCP および SFTP でのみ有効です。
|
cURL 7.17.1 で追加されました。
|
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 |
リモートホストの公開鍵を、Base64 エンコードされた SHA256 ハッシュ形式で指定します。
指定されたハッシュがリモートホストが提供するそれと一致しない場合、
通信は失敗します。
|
|
CURLOPT_SSH_PUBLIC_KEYFILE |
公開鍵のファイル名。指定しなかった場合、libcurl はデフォルトの場所を探します。デフォルトは、
環境変数 HOME が設定されていれば $HOME/.ssh/id_dsa.pub、設定されていなければ
カレントディレクトリの "id_dsa.pub" です。
|
cURL 7.16.1 で追加されました。
|
CURLOPT_SSH_PRIVATE_KEYFILE |
秘密鍵のファイル名。指定しなかった場合、libcurl はデフォルトの場所を探します。デフォルトは、
環境変数 HOME が設定されていれば $HOME/.ssh/id_dsa、設定されていなければ
カレントディレクトリの "id_dsa" です。
ファイルがパスワードで保護されている場合は、パスワードを
CURLOPT_KEYPASSWD に設定します。
|
cURL 7.16.1 で追加されました。
|
CURLOPT_SSL_CIPHER_LIST |
SSL で使用する暗号のリスト。例えば
RC4-SHA および TLSv1 が
使用可能です。
|
|
CURLOPT_SSL_EC_CURVES |
楕円曲線暗号のアルゴリズムの一覧を、コロンで区切って指定します。
たとえば、X25519:P-521 は、
有効な楕円曲線暗号の一覧です。
このオプションは、
cURL のSSLバックエンドがそのサポートを用いるようにビルドされている場合に、
SSL ハンドシェイクで使われるクライアントの鍵交換アルゴリズムを定義します。
|
|
CURLOPT_SSLCERT |
PEM フォーマットの証明書を含むファイルの名前。
|
|
CURLOPT_SSLCERTPASSWD |
CURLOPT_SSLCERT
証明書を使用する際に必要なパスワード。
|
|
CURLOPT_SSLCERTTYPE |
証明書の形式。サポートされるフォーマットは
"PEM" (デフォルト)、"DER"
および "ENG" です。
OpenSSL 0.9.3 以降では、
"P12" (PKCS#12 でエンコードされたファイル) もサポートしています。
|
cURL 7.9.3 で追加されました。
|
CURLOPT_SSLENGINE |
CURLOPT_SSLKEY で指定した SSL 秘密鍵の
暗号化エンジンの ID 。
|
|
CURLOPT_SSLENGINE_DEFAULT |
非対称暗号化で使用する暗号化エンジンの ID 。
|
|
CURLOPT_SSLKEY |
SSL 秘密鍵を含むファイルの名前。
|
|
CURLOPT_SSLKEYPASSWD |
CURLOPT_SSLKEY で指定した SSL 秘密鍵を
使用するために必要なパスワード。
注意:
このオプションには重要なパスワードが含まれます。PHP スクリプトを
安全な状態におくことを忘れないでください。
|
|
CURLOPT_SSLKEYTYPE |
CURLOPT_SSLKEY で指定した SSL 秘密鍵の
形式。サポートされる型は以下のとおりです。
"PEM" (デフォルト)、"DER"
および "ENG" 。
|
|
CURLOPT_TLS13_CIPHERS |
TLS 1.3 接続を確立するために使う暗号スイートの一覧。
この一覧はひとつ以上の暗号スイートの文字列がコロンで区切られており、
構文的に正しくなければなりません。
このオプションは現状、OpenSSL 1.1.1 以降でcurlがビルドされている場合にだけ使われています。
他のSSLバックエンドを使っている場合、
CURLOPT_SSL_CIPHER_LIST を使うと TLS 1.3 の暗号スイートを設定できます。
|
PHP 7.3.0 以降 および cURL >= 7.61.0 と OpenSSL >= 1.1.1 をビルドした場合に使用可能です。
|
CURLOPT_UNIX_SOCKET_PATH |
接続のエンドポイントとして Unixドメインソケットの利用を有効にし、
ドメインソケットのパスを与えられた string として設定します。
|
cURL 7.40.0 で追加されました。
PHP 7.0.7 以降で利用可能です。
|
CURLOPT_URL |
取得する URL 。curl_init() でセッションを
初期化する際に指定することも可能です。
|
|
CURLOPT_USERAGENT |
HTTP リクエストで使用される "User-Agent: "
ヘッダの内容。
|
|
CURLOPT_USERNAME |
認証に使うユーザー名
|
cURL 7.19.1 で追加されました。
|
CURLOPT_PASSWORD |
認証に使うパスワード
|
cURL 7.19.1 で追加されました。
|
CURLOPT_USERPWD |
接続に使用するユーザー名とパスワード。
"[username]:[password]" 形式で指定します。
|
|
CURLOPT_XOAUTH2_BEARER |
OAuth 2.0 のアクセストークンを指定します。
|
cURL 7.33.0 で追加されました。PHP 7.0.7 以降で利用可能です。
|