PUT cache

API情報

HTTPメソッド API名 目的
PUT cache_setting キャッシュ設定
  • キャッシュの動作を設定をします。

個別パラメータ

URL
フィールド タイプ 意味
UrlScheme String

URLスキーム

値: http, https

HTTPリクエストボディ
  • QueryTypeのみを変更する場合は、QueryTypeとCachedKey のみをパラメータに設定します。
  • CacheTtlのみを変更する場合は、CachTtlのみをパラメータに設定します。
  • CacheTtlに、[]をセットするとキャッシュのTTL設定がクリアされます。

リクエスト

フィールド タイプ 意味
QueryType String

クエリストリング付きアクセスの取り扱い設定 (no-cache: クエリストリング付アクセスをキャッシュしない, all-cache: クエリストリング付アクセスをすべてキャッシュする, key-cache: キャッシュするクエリパラメータ名を指定する)

値: no-cache, all-cache, key-cache

CachedKey String

キャッシュ対象のクエリストリングパラメタ文字列

  • 最大256文字
  • 利用可能な文字は半角英数, アンダースコア("_")です。
  • Result.QueryTypeが"key-cache"の場合のみ設定できます。
QueryTypeV2 String

クエリストリング付きアクセスのキャッシュ区別設定 (none: クエリパラメータにより区別しない、include: 区別するクエリパラメータ名を指定する、all: すべてのクエリパラメータを区別する)

値: none, include, all

CachedKeyV2 String

クエリストリング付きアクセスのキャッシュ区別の対象となるクエリストリングパラメタ文字列

  • 最大256文字
  • 利用可能な文字は半角英数, アンダースコア("_")です。
  • Result.QueryTypeV2が"include"の場合のみ設定できます。
CacheTtl Array

キャッシュ設定

  • 最大60個
CacheTtl.Path String

URLパス

  • 最大256文字
  • CacheTtl.UseGlobの値によって利用できる記号が異なる

    • off(通常指定)の場合、以下の記号が利用可能
      _ / . ~ -

    • on(拡張指定)の場合、通常指定で利用可能な記号に加えて以下の特殊記号も利用可能
      * ? [ ]

特殊記号の詳細は以下となる

  • *
    • 0文字以上の/を除く任意文字
    • 「a*」の指定は「a」「abc.jpg」などを含むが「abc/def.html」を含まない
  • **
    • 0文字以上の/を含む任意文字列
    • 「a**」の指定は「a」「abc.jpg」「abc/def.html」などを含む
  • ?
    • 任意の1文字
    • 「a?」の指定は「aa」「ab」などを含む
  • []
    • [から]の間に指定したうちの1文字。-による文字範囲の指定も可能
    • 「a.[ch]」の指定は「a.c」「a.h」を含む。[a-c]は[abc]と同じ
CacheTtl.UseGlob String

URLパスで拡張指定をする場合は"on", 通常指定の場合は"off"

CacheTtl.SubDirectory String

配下/直下 (on: 前方一致するすべてのファイルをキャッシュする(配下), off: URLと完全一致するファイルのみをキャッシュする(直下))

値: on, off

  • Result.CacheTtl.CacheTypeが"invalidate"の場合は"on"を設定します。
CacheTtl.Extension String

キャッシュするファイルの拡張子

  • 最大5文字
  • 利用可能な文字は,半角英数字および アンダースコア("_")
  • Result.CacheTtl.CacheTypeが"invalidate"の場合は無視されます。
CacheTtl.CacheType String

コンテンツのキャッシュ方法 (validate: キャッシュする, ignore-server-nocache:no-cacheレスポンスヘッダを無視してキャッシュする, invalidate: キャッシュしない)

値: validate, ignore-server-nocache, invalidate

CacheTtl.Ttl String

キャッシュ更新までの時間(キャッシュTTL)

  • 1~43200
  • Result.CacheTtl.CacheTypeが"invalidate"の場合は"-1"を設定します。
CacheTtl.TextCookieCache String

リクエストにCookieが含まれている場合にContent-Typeがテキストのコンテンツのキャッシュ可否(on: キャッシュする, off: キャッシュしない)
値: on, off

  • 省略した場合は "キャッシュしない"("off") になります。
CacheTtl.IgnoreClientNocache String

no-cache付きリクエストのキャッシュ可否(on: キャッシュする, off: キャッシュしない)
値: on, off

  • 省略した場合は "キャッシュしない"("off") になります。
CacheTtl.RemoveQueryString String

クエリストリングを削除可否(on: キャッシュする, off: キャッシュしない)
値: on, off

  • 省略した場合は "キャッシュしない"("off") になります。
CacheTtlBase.TextCookieCache String

"on"にした場合、Result.CacheTtl.TextCookieCache の設定に関わらず、全てのURLに「リクエストにCookieが含まれている場合にContent-Typeがテキストのコンテンツをキャッシュする」が適用されます。

値: on, off

CacheTtlBase.IgnoreClientNocache String

"on"にした場合、Result.CacheTtl.IgnoreClientNocache の設定に関わらず、全てのURLに 「no-cache付きリクエストをキャッシュする」が適用されます。

値: on, off

CacheTtlBase.RemoveQueryString String

"on"にした場合、Result.CacheTtl.RemoveQueryStringが"off"ではない全てのURLに 「クエリストリングの削除機能」 が適用されます。
値: on, off

HttpsCache String

HTTPSコンテンツのキャッシュ方法

値: on, off

  • UrlSchemeがhttpsの場合に指定可能です。
  • 2016/7/26 以降、本設定無効化に伴い、設定値の変更は行えなくなります。
  • HTTPSコンテンツのキャッシュ方法を設定する場合はキャッシュバイパス機能をご利用ください。
  • キャッシュバイパス機能につきましては詳細資料をご参照ください。
Cbc String

TPS通信でCBCモードを用いる暗号化スイートが有効である場合は"on"、無効である場合は"off"
値: on, off

  • Result.UrlSchemeが"https"の場合に設定されています。

レスポンス

フィールド タイプ 意味
Result.UrlScheme String

URLスキーム

値: http, https

Result.QueryType String

クエリストリング付きアクセスの取り扱い設定 (no-cache: クエリストリング付アクセスをキャッシュしない, all-cache: クエリストリング付アクセスをすべてキャッシュする, key-cache: キャッシュするクエリパラメータ名を指定する)

値: no-cache, all-cache, key-cache

Result.CachedKey String

キャッシュ対象のクエリストリングパラメタ文字列

  • Result.QueryTypeが"key-cache"以外の場合は、""(空文字)が設定されています。
Result.QueryTypeV2 String

クエリストリング付きアクセスのキャッシュ区別設定 (none: クエリパラメータにより区別しない、include: 区別するクエリパラメータ名を指定する、all: すべてのクエリパラメータを区別する)

本レスポンスフィールドは新設備のみとなります

値: none, include, all

Result.CachedKeyV2 String

クエリストリング付きアクセスのキャッシュ区別の対象となるクエリストリングパラメタ文字列

本レスポンスフィールドは新設備のみとなります

  • Result.QueryTypeV2が"include"の場合のみ設定されています。
Result.CacheTtl Array

キャッシュ設定

  • 最大60個
Result.CacheTtl.Path String

URLパス

  • 最大256文字
Result.CacheTtl.UseGlob String

URLパスで拡張指定をする場合は"on", 通常指定の場合は"off"

Result.CacheTtl.SubDirectory String

前方一致するすべてのファイルをキャッシュする場合は配下(on)、URLと完全一致するファイルのみをキャッシュする場合は直下(off)

値: on, off

  • Result.CacheTtl.CacheTypeが"invalidate"の場合は"on"が設定されています。
Result.CacheTtl.Extension String

キャッシュするファイルの拡張子

  • 最大5文字
  • Result.CacheTtl.CacheTypeが"invalidate"の場合は無視されています。
Result.CacheTtl.CacheType String

コンテンツのキャッシュ方法 (validate: キャッシュする, ignore-server-nocache:no-cacheレスポンスヘッダを無視してキャッシュする, invalidate: キャッシュしない)

値: validate, ignore-server-nocache, invalidate

Result.CacheTtl.Ttl String

キャッシュ更新までの時間(キャッシュTTL)

  • 1~43200
  • Result.CacheTtl.CacheTypeが"invalidate"の場合は"-1"が設定されています。
Result.CacheTtl.TextCookieCache String

リクエストにCookieが含まれている場合にContent-Typeがテキストのコンテンツをキャッシュする場合は "on", キャッシュしない場合は "off"
値: on, off

  • Content-Typeがテキスト以外の場合は、本設定によらずキャッシュします。
Result.CacheTtl.IgnoreClientNocache String

no-cache付きリクエストをキャッシュする場合は"on",キャッシュしない場合は"off"
値: on, off

Result.CacheTtl.RemoveQueryString String

クエリストリングを削除する場合は"on"、削除しない場合は"off"
値: on, off

Result.CacheTtlBase.TextCookieCache String

"on"の場合、Result.CacheTtl.TextCookieCache の設定に関わらず、全てのURLに「リクエストにCookieが含まれている場合にContent-Typeがテキストのコンテンツをキャッシュする」 が適用

値: on, off

  • Content-Typeがテキスト以外の場合は、本設定によらずキャッシュします。
Result.CacheTtlBase.IgnoreClientNocache String

"on"の場合、Result.CacheTtl.IgnoreClientNocache の設定に関わらず、全てのURLに「no-cache付きリクエストをキャッシュする」が適用

値: on, off

Result.CacheTtlBase.RemoveQueryString String

"on"の場合、Result.CacheTtl.RemoveQueryStringが"off"ではない全てのURLに 「クエリストリングの削除機能」 が適用
値: on, off

Result.HttpsCache String

HTTPSコンテンツのキャッシュ方法

  • Result.UrlSchemeが"https"の場合に設定されています。
  • 2016/7/26 以降、本設定は無効になり、レスポンス値は常に"off"となります。
  • HTTPSコンテンツのキャッシュ方法を確認する場合はキャッシュバイパス機能の設定をご参照ください。
  • キャッシュバイパス機能につきましては詳細資料をご参照ください。
Result.SslV3 String HTTPS通信でSSL 3.0 を有効である場合は"on"、無効である場合は"off"
値: on, off
  • Result.UrlSchemeが"https"の場合に設定されています。
  • 2015/11/10 以降、SSL 3.0 設定は標準で無効になります。
Result.TlsV10 String HTTPS通信でTLS 1.0が有効である場合は"on"、無効である場合は"off"
値: on, off
  • Result.UrlSchemeが"https"の場合に設定されています。
  • 2020/9/30 以降、TLS 1.0 設定は標準で無効になります。
Result.TlsV11 String HTTPS通信でTLS 1.1が有効である場合は"on"、無効である場合は"off"
値: on, off
  • Result.UrlSchemeが"https"の場合に設定されています。
  • 2020/12/16 以降、TLS 1.1 設定は標準で無効になります。
Result.TlsV12 String HTTPS通信でTLS 1.2が有効である場合は"on"、無効である場合は"off"
値: on, off
  • Result.UrlSchemeが"https"の場合に設定されています。
Result.TlsV13 String HTTPS通信でTLS 1.3が有効である場合は"on"、無効である場合は"off"
値: on, off
  • Result.UrlSchemeが"https"の場合に設定されています。
Result.Cbc String

HTTPS通信でCBCモードを用いる暗号化スイートが有効である場合は"on"、無効である場合は"off"
値: on, off

  • Result.UrlSchemeが"https"の場合に設定されています。

エラーコード

  • このAPIに関する個別エラーはありません。
  • 共通エラーコードはエラーレスポンスを参照してください。

制限

  • CacheTtl.Path, CachTtl.SubDirectory, CachTtl.Ttlが同一の設定を複数指定することはできません。
  • CacheTtl.CacheTypeに、"invalidate"(キャッシュしない)を設定した場合は、CacheTtl.SubDirectoryに"on"、CacheTtl.Ttlに"-1"を設定してください。
  • このAPIにて以下パラメータの値は変更できません
    • SslV3
    • TlsV10
    • TlsV11
    • TlsV12
    • TlsV13

サンプル

リクエスト

PUT /r/(APIVersion)/(ServiceCode)/(UrlScheme)/cache_setting.json
Host: cac.api.iij.jp
Content-Type: application/json
Date: Mon, dd Jan 20yy 12:34:56 GMT
x-iijapi-Expire: (Expire)
x-iijapi-SignatureMethod: (SignatureMethod)
x-iijapi-SignatureVersion: (SignatureVersion)
Authorization: IIJAPI (AccessKeyId):(Signature)
{
    "QueryType": "all-cache",
    "CachedKey": "",
    "CacheTtl": 
    [
        {
            "Path": "example",
            "UseGlob": "off"
            "SubDirectory": "off",
            "Extension": "",
            "CacheType": "validate",
            "Ttl": "300",
            "TextCookieCache": "on",
            "IgnoreClientNocache": "on",
            "RemoveQueryString": "on"
        },
        {
            "Path": "example/js",
            "SubDirectory": "on",
            "Extension": "js",
            "CacheType": "validate",
            "Ttl": "1440",
            "TextCookieCache": "on",
            "IgnoreClientNocache": "on",
            "RemoveQueryString": "on"
        },
        {
            "Path": "example",
            "SubDirectory": "on",
            "Extension": "html",
            "CacheType": "invalidate",
            "Ttl": "-1"
        }
    ],
    "CacheTtlBase": 
    {
         "TextCookieCache": "off",
         "IgnoreClientNocache": "off",
         "RemoveQueryString": "off"
    },
    "Cbc":"off"
}

レスポンスボディ

{
    "Result": {
        "RequestId":"xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx",
        "ServiceCode": "cac########",
        "UrlScheme":"https",
        "QueryType":"all-cache",
        "CachedKey":"",
        "CacheTtl":
        [
            {
                "Path":"example",
                "UseGlob":"off",
                "SubDirectory":"off",
                "Extension":"",
                "CacheType":"validate",
                "Ttl":"300",
                "TextCookieCache":"on",
                "IgnoreClientNocache":"on",
                "RemoveQueryString":"on"
            },
            {
                "Path":"example/js",
                "SubDirectory":"on",
                "Extension":"js",
                "CacheType":"validate",
                "Ttl":"1440",
                "TextCookieCache":"on",
                "IgnoreClientNocache":"on",
                "RemoveQueryString":"on"
            },
            {
                "Path":"example",
                "SubDirectory":"on",
                "Extension":"",
                "CacheType":"invalidate",
                "Ttl":"-1",
                "TextCookieCache":"off",
                "IgnoreClientNocache":"off",
                "RemoveQueryString":"off"
            }
        ],
        "CacheTtlBase":
        {
            "TextCookieCache":"off",
            "IgnoreClientNocache":"off",
            "RemoveQueryString":"off"
        },
        "HttpsCache":"off",
        "SslV3":"off",
        "Tls10":"off",
        "Tls11":"off",
        "Tls12":"on",
        "Tls13":"on",
        "Cbc":"off"
    }
}