OSS から返される HTTP 400 エラーの原因と解決策。
BadReplicationLocation
CRR 設定で指定されたターゲットリージョンが存在しない場合に返されます。
選択したレプリケーションの場所が無効です
-
原因:クロスリージョンレプリケーション (CRR) 設定で指定されたターゲットリージョンが存在しません。
-
解決策:ターゲットバケットのリージョンが有効であることを確認してください。
BadRequest
リクエストに必要なクロスオリジンリクエストヘッダーがない場合に返されます。
情報が不十分です。Origin リクエストヘッダーが必要です
-
原因:クロスオリジンリクエストのプリフライトリクエストに Origin リクエストヘッダーがありません。
-
解決策:プリフライトリクエスト (OPTIONS) に Origin ヘッダーを追加します。OSS はこのヘッダーを使用して CORS ポリシーを照合します。
OPTIONS /testobject HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Fri, 24 Feb 2012 05:45:34 GMT Origin:http://www.example.com Access-Control-Request-Method:PUT Access-Control-Request-Headers:x-oss-test
情報が不十分です。Access-Control-Request-Method ヘッダーが必要です
-
原因:クロスオリジンリクエストのプリフライトリクエストに Access-Control-Request-Method リクエストヘッダーがありません。
-
解決策:プリフライトリクエスト (OPTIONS) に Access-Control-Request-Method ヘッダーを追加して、実際のリクエストの HTTP メソッドを指定します。
BucketReplicationAlreadyExist
すでに CRR 関係にあるバケット間で重複したレプリケーションルールを作成した場合に返されます。
バケットのレプリケーションは既に存在します
-
原因:ソースバケットとターゲットバケットの間に CRR 関係が既に存在します。
-
解決策:新しい CRR ルールを設定するには、まず既存の CRR ルールを削除する必要があります。
CORSRuleBeyondLimit
バケットに設定された CORS ルールの数が制限を超えた場合に返されます。
CORS ルールの数が制限を超えています
-
原因:バケットに設定された CORS ルールの数が制限を超えています。
-
解決策:バケットは最大 10 個の CORS ルールをサポートします。類似の設定を統合するか、不要なルールを削除してください。詳細については、「PutBucketCors」をご参照ください。
DailyInventoryExceedLimit
バケット内のオブジェクト数が、日次マニフェストファイルのエクスポート上限を超えた場合に返されます。
日次インベントリオブジェクト数が上限を超えています
-
原因:バケット内のオブジェクト数が、日次マニフェストファイルのエクスポート上限を超えています。
-
解決策:日次でマニフェストファイルをエクスポートする場合、バケット内のオブジェクト数は 100 億未満である必要があります。
バケット内のオブジェクト数が 100 億以上の場合は、代わりに週次でマニフェストファイルをエクスポートしてください。
EntityTooLarge
アップロードされたオブジェクトが許可される最大サイズを超えた場合に返されます。
提案されたアップロードが許可される最大サイズを超えています、またはソースオブジェクトの長さが許可される最大サイズを超えています
-
原因:アップロードされたオブジェクトのサイズが許可される最大サイズを超えています。
-
解決策: PostObject 操作を使用してファイルをアップロードする場合、PostPolicy のフォームフィールドに有効な値を設定します。
content-length-range条件を使用して、アップロードされたオブジェクトに許可されるサイズの範囲を指定します。 付録: Post Policy。
EntityTooSmall
アップロードされたオブジェクトが許可される最小サイズより小さい場合に返されます。
提案されたアップロードが許可される最小サイズより小さいです
-
原因:アップロードされたオブジェクトのサイズが許可される最小サイズより小さいです。
-
解決策: PostObject 操作を使用してファイルをアップロードする際は、PostPolicy のフォームフィールドに有効な値を設定します。
content-length-range条件を使用して、アップロードオブジェクトの許容サイズ範囲を指定します。
FieldItemTooLong
PostObject リクエストのフォームフィールドがサイズ制限を超えた場合に返されます。
フォームフィールドの名前が長すぎます
-
原因:PostObject リクエストのフォームフィールドが大きすぎます。
-
解決策:ファイル以外のフォームフィールドは 4 KB を超えることはできません。詳細については、「PostObject エラーのトラブルシューティング」をご参照ください。
FilePartNotExist
マルチパートアップロード中にリクエストされたパートが削除された場合に返されます。
読み取ろうとしたパートは削除されました
-
原因:リクエストされたパートが削除されました。
-
解決策:必要なすべてのパートが正常にアップロードされ、削除されていないことを確認してください。CompleteMultipartUpload オペレーションを呼び出すことで、アップロードされたパートのステータスを確認できます。
ImageTooLarge
画像処理中にソース画像がサイズ制限を超えた場合に返されます。
サポートされる画像の最大サイズは
-
原因:画像サイズが制限を超えています。
-
解決策:ソース画像ファイルが以下のサイズ制限を満たしていることを確認してください:
-
ソース画像ファイルのサイズは 20 MB を超えることはできません。
-
画像を回転する場合、ソース画像の幅または高さは 4,096 ピクセルを超えることはできません。
-
ソース画像の片側の長さは 30,000 ピクセルを超えることはできません。
ソース画像ファイルが 20 MB を超える場合は、以下のいずれかの代替アプローチを使用してください:
-
処理前のサイズ変更: OSS 画像処理の
resizeパラメーターを使用して、ファイルサイズが 20 MB 未満になるまで画像のディメンションを縮小します。その後、フォーマット変換などの他の画像処理操作を適用します。 -
ローカルでの変換:画像をローカル環境にダウンロードし、ImageMagick や Photoshop などのツールを使用してフォーマットを変換したりファイルを圧縮したりしてから、OSS に再アップロードします。
-
IMM を使用した非同期処理:大きなファイルやバッチ画像処理のシナリオでは、Intelligent Media Management (IMM) を使用して非同期のフォーマット変換を実行します。IMM は 20 MB のソース画像サイズ制限を課しません。
-
IncompleteBody
リクエストの Content-Length パラメーターで指定されたバイト数が、実際に送信されたバイト数と一致しない場合に返されます。
Content-Length HTTP ヘッダーで指定されたバイト数を提供していません
-
原因:Content-Length パラメーターで指定されたバイト数が、実際に送信されたバイト数と一致しません。
-
解決策:Content-Length パラメーターを実際に送信されたバイト数に設定してください。
IncorrectNumberOfFilesInPOSTRequest
PostObject リクエスト内のファイル数が無効な場合に返されます。
POST はリクエストごとに正確に 1 つのファイルアップロードを要求します
-
原因: PostObject リクエストのファイル数が無効です。PostObject リクエストには、
fileフォームフィールドを 1 つしか含めることができません。 -
解決策: PostObject リクエストに
fileフォームフィールドが 1 つだけ含まれていることを確認してください。
InlineDataTooLarge
インラインデータが許可される最大サイズを超えています
-
原因:
-
オブジェクトサイズの制限超過:アップロードされたファイルのサイズが、現在のアップロード操作の制限を超えています。
-
ホットリンク保護設定の制限超過:Referer ホワイトリストとブラックリストの設定の合計サイズが 20 KB を超えています。
-
-
解決策:
-
シナリオ 1:オブジェクトサイズの制限超過
ファイルサイズに基づいてアップロード方法を調整します:
-
マルチパートアップロード:最大ファイルサイズは 48.8 TB です。
-
シナリオ 2:ホットリンク保護設定の制限超過
不要なホットリンク保護ルールを削除して、Referer ホワイトリストとブラックリストの合計データサイズが 20 KB を超えないようにします。
-
InvalidArgument
リクエストパラメーターが無効であるか、形式が正しくない場合に返されます。このエラーコードには、複数の特定のエラーメッセージが含まれます:
Authorization ヘッダー値に AccessKeyId または Signature がありません
-
原因:Authorization ヘッダーの計算メソッドに AccessKey ID と Signature パラメーターがありません。
-
解決策:Authorization ヘッダーの計算メソッドに AccessKey ID パラメーターを追加し、以下の署名例に示すように署名計算を完了します。
リクエスト
署名文字列の計算式
署名文字列
PUT /nelson HTTP/1.0 Content-MD5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Wed, 28 Dec 2022 10:27:41 GMT Host: examplebucket.oss-cn-hangzhou.aliyuncs.com x-oss-meta-author: alice x-oss-meta-magic: abracadabra
Signature = base64(hmac-sha1(AccessKeySecret,VERB + "\n" + Content-MD5 + "\n"+ Content-Type + "\n" + Date + "\n" + CanonicalizedOSSHeaders+ CanonicalizedResource))
PUT\n eB5eJF1ptWaXm4bijSPyxw==\n text/html\n Wed, 28 Dec 2022 10:27:41 GMT\n x-oss-meta-magic:abracadabra\nx-oss-meta-author:alice\n/examplebucket/nelson
AccessKey ID が LTAI**************** で、AccessKey Secret が yourAccessKeySecret であると仮定します。以下の Python コードは、署名を計算する方法の例を示しています:
import hmac import hashlib import base64 import os accessKeySecret = os.getenv('OSS_ACCESS_KEY_SECRET') h = hmac.new(accessKeySecret.encode('utf-8'), "PUT\neB5************==\ntext/html\nWed, 28 Dec 2022 10:27:41 GMT\nx-oss-meta-author:alice\nx-oss-meta-magic:abracadabra\n/examplebucket/nelson".encode('utf-8'), hashlib.sha1) signature = base64.encodebytes(h.digest()) print(signature)計算された署名である
77Dv****************は、 Authorization ヘッダーの構造と組み合わされて、送信するメッセージ本文を形成します:PUT /nelson HTTP/1.0 Authorization:OSS qn6q**************:77Dv**************** Content-Md5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Wed, 28 Dec 2022 10:27:41 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com x-oss-meta-author: alice x-oss-meta-magic: abracadabra
Authorization ヘッダーが無効です
-
原因:Authorization ヘッダーの計算メソッドに無効なパラメーターが指定されています。
-
解決策:以下の指示に基づいて Authorization ヘッダーの計算をトラブルシューティングします。
-
計算メソッド:
Authorization = "OSS " + AccessKeyId + ":" + Signature Signature = base64(hmac-sha1(AccessKeySecret, VERB + "\n" + Content-MD5 + "\n" + Content-Type + "\n" + Date + "\n" + CanonicalizedOSSHeaders + CanonicalizedResource)) -
パラメーターの説明:
パラメーター
タイプ
必須
例
説明
AccessKeyId
文字列
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
文字列
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
列挙型
はい
PUT
PUT、GET、POST、HEAD、DELETE、OPTIONS などの HTTP リクエストメソッド。
\n
文字列
いいえ
\n
改行。
Content-MD5
文字列
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージ本文 (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。詳細については、「RFC2616 Content-MD5」をご参照ください。
このリクエストヘッダーは、メッセージの整合性 (メッセージ本文が送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
文字列
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
文字列
はい
Sun, 22 Nov 2015 08:16:38 GMT
重要操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
文字列
いいえ
x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n
プレフィックスが
x-oss-で、辞書式順序でソートされた HTTP ヘッダー。このパラメーターは空にすることができます。-
CanonicalizedOSSHeaders を空に設定した場合、末尾に
\n区切り文字を追加する必要はありません。 -
CanonicalizedOSSHeaders が 1 つだけの場合、末尾に
\n区切り文字を追加する必要があります。たとえば、x-oss-meta-a\nです。 -
`CanonicalizedOSSHeaders` が複数ある場合は、各 `CanonicalizedOSSHeaders` の後に
\n区切り文字を追加する必要があります。たとえば、x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\nのようになります。
CanonicalizedResource
文字列
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
-
-
署名の例:
リクエスト
署名文字列の計算式
署名文字列
PUT /nelson HTTP/1.0 Content-MD5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Wed, 28 Dec 2022 10:27:41 GMT Host: examplebucket.oss-cn-hangzhou.aliyuncs.com x-oss-meta-author: alice x-oss-meta-magic: abracadabra
Signature = base64(hmac-sha1(AccessKeySecret,VERB + "\n" + Content-MD5 + "\n"+ Content-Type + "\n" + Date + "\n" + CanonicalizedOSSHeaders+ CanonicalizedResource))
PUT\n eB5eJF1ptWaXm4bijSPyxw==\n text/html\n Wed, 28 Dec 2022 10:27:41 GMT\n x-oss-meta-magic:abracadabra\nx-oss-meta-author:alice\n/examplebucket/nelson
AccessKey ID が LTAI**************** で、AccessKey Secret が yourAccessKeySecret であると仮定します。以下の Python コードは、署名を計算する方法の例を示しています:
import hmac import hashlib import base64 import os accessKeySecret = os.getenv('OSS_ACCESS_KEY_SECRET') h = hmac.new(accessKeySecret.encode('utf-8'), "PUT\neB5************==\ntext/html\nWed, 28 Dec 2022 10:27:41 GMT\nx-oss-meta-author:alice\nx-oss-meta-magic:abracadabra\n/examplebucket/nelson".encode('utf-8'), hashlib.sha1) signature = base64.encodebytes(h.digest()) print(signature)計算された署名は
77Dv****************で、Authorization ヘッダーの構造と組み合わせて、送信するメッセージ本文を構成します:PUT /nelson HTTP/1.0 Authorization:OSS qn6q**************:77Dv**************** Content-Md5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Wed, 28 Dec 2022 10:27:41 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com x-oss-meta-author: alice x-oss-meta-magic: abracadabra
-
Authorization ヘッダーが無効です、Authorization ヘッダーの項目数が不正です
-
原因:Authorization ヘッダーの計算メソッドに不正なパラメーターが指定されています。
-
解決策:以下の表のパラメーター説明に基づいて、Authorization ヘッダーの計算を完了してください。
パラメーター
タイプ
必須
例
説明
AccessKeyId
文字列
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
文字列
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
列挙型
はい
PUT
PUT、GET、POST、HEAD、DELETE、OPTIONS などの HTTP リクエストメソッド。
\n
文字列
いいえ
\n
改行。
Content-MD5
文字列
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージ本文 (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。詳細については、「RFC2616 Content-MD5」をご参照ください。
このリクエストヘッダーは、メッセージの整合性 (メッセージ本文が送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
文字列
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
文字列
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
文字列
いいえ
x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n
x-oss-で始まり、辞書式順序でソートされた HTTP ヘッダー。このパラメーターは空にすることができます。-
CanonicalizedOSSHeaders を空に設定した場合、末尾に
\n区切り文字を追加する必要はありません。 -
CanonicalizedOSSHeaders が 1 つしかない場合は、末尾に
\n区切り文字を追加する必要があります。例:x-oss-meta-a\n。 -
複数の CanonicalizedOSSHeaders がある場合は、各 CanonicalizedOSSHeaders の後に
\n区切り文字を追加する必要があります。例:x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n。
CanonicalizedResource
文字列
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
-
Authorization ヘッダー値が空です
-
原因:Authorization ヘッダーの計算メソッドで必須パラメーターが空です。
-
解決策:以下の表のパラメーター説明に基づいて、Authorization ヘッダーの計算を完了してください。
パラメーター
タイプ
必須
例
説明
AccessKeyId
文字列
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
文字列
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
列挙型
はい
PUT
PUT、GET、POST、HEAD、DELETE、OPTIONS などの HTTP リクエストメソッド。
\n
文字列
いいえ
\n
改行。
Content-MD5
文字列
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージ本文 (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。詳細については、「RFC2616 Content-MD5」をご参照ください。
このリクエストヘッダーは、メッセージの整合性 (メッセージ本文が送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
詳細については、「Content-MD5 ハッシュの計算」をご参照ください。
Content-Type
文字列
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
文字列
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
文字列
いいえ
x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n
x-oss-で始まり、辞書式順序でソートされた HTTP ヘッダー。このパラメーターは空にすることができます。-
CanonicalizedOSSHeaders を空に設定した場合、末尾に
\n区切り文字を追加する必要はありません。 -
CanonicalizedOSSHeaders が 1 つしかない場合は、末尾に
\n区切り文字を追加する必要があります。例:x-oss-meta-a\n。 -
複数の CanonicalizedOSSHeaders がある場合は、各 CanonicalizedOSSHeaders の後に
\n区切り文字を追加する必要があります。例:x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n。
詳細については、「CanonicalizedOSSHeaders の構築」をご参照ください。
CanonicalizedResource
文字列
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
詳細については、「CanonicalizedOSSHeaders の構築」をご参照ください。
-
日付形式が不正です
-
原因:時間パラメーターが無効です。
-
解決策: 時間フォーマットは、たとえば
Sun, 06 Nov 1994 08:49:37 GMTのように、RFC 1123 標準に準拠する必要があります。
このホストで IP を取得できません
-
原因:ホストが無効です。
-
解決策: ホストには、バケットドメイン名または IP アドレスを設定できます。バケットドメイン名のフォーマットは
BucketName.Endpointです (例:examplebucket.oss-cn-hangzhou.aliyuncs.com)。ホストが IP アドレスの場合は、その IP アドレスが有効であることを確認してください。
コピー元はソースバケットとキーを明記する必要があります:/sourcebucket/sourcekey
-
原因:ファイルをコピーする際に、ソースバケットとソースオブジェクトが指定されていません。
-
解決策: ファイルをコピーするときは、x-oss-copy-source パラメーターを
/sourcebucket/sourcekeyフォーマットで指定する必要があります。 たとえば、ソースバケットが examplebucket で、ソースオブジェクトが exampleobject の場合、x-oss-copy-source パラメーターを/examplebucket/exampleobjectに設定します。
callback クエリ文字列パラメーターまたは x-oss-callback ヘッダーのいずれかを指定する必要がありますが、両方は指定できません
-
原因:callback パラメーターがリクエスト URL とリクエストヘッダーの両方に含まれています。
-
解決策:callback パラメーターはリクエスト URL またはリクエストヘッダーのいずれかに含めることができますが、両方には含められません。
callback-var クエリ文字列パラメーターまたは x-oss-callback-var ヘッダーのいずれかを指定する必要がありますが、両方は指定できません
-
原因:callback-var パラメーターがリクエスト URL とリクエストヘッダーの両方に含まれています。
-
解決策:callback-var パラメーターはリクエスト URL またはリクエストヘッダーのいずれかに含めることができますが、両方には含められません。
Signature クエリ文字列パラメーターまたは Authorization ヘッダーのいずれかを指定する必要がありますが、両方は指定できません
-
原因
同じリクエスト内で、リクエストヘッダーに署名用の Authorization フィールドが存在し、かつリクエスト URI に署名用の OSSAccessKeyId、Expires、Signature フィールドが存在します。例:
PUT /example_file?OSSAccessKeyId=LTAI****************&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv**** HTTP/1.0 Authorization:OSS qn6q**************:77Dv**************** Content-Md5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Tue, 20 Dec 2022 08:48:18 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com -
解決策
同じリクエスト内で、ヘッダー署名または URI 署名のいずれかを使用しますが、両方は使用しません。以下のコードは、ヘッダー署名のみを使用する例です:
PUT /example_file HTTP/1.0 Authorization:OSS qn6q**************:77Dv**************** Content-Md5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Tue, 20 Dec 2022 08:48:18 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com以下のコードは、URI 署名のみを使用する例です:
PUT /example_file?OSSAccessKeyId=LTAI****************&Expires=1141889120&Signature=vjby******** HTTP/1.0 Content-Md5: eB5eJF1ptWaXm4bijSPyxw== Content-Type: text/html Date: Tue, 20 Dec 2022 08:48:18 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com
無効な引数です。パラメーターが無効です
-
原因:パラメーターの形式が無効です。
-
解決策:「API 概要」で対応する API オペレーションを参照し、パラメーターを正しい形式で指定してください。
無効な日付です。現在時刻より後にはできません
-
原因:時間パラメーターが無効です。UNIX タイムスタンプが現在時刻より後になっています。
-
解決策:UNIX タイムスタンプは現在時刻より前でなければなりません。
無効な日付です。1970-01-01 00:00:00 より後でなければなりません
-
原因:時間パラメーターが無効です。UNIX タイムスタンプが 0 未満です。
-
解決策:UNIX タイムスタンプは 0 より大きくなければなりません。
指定されたバージョン ID が無効です
-
原因:指定されたオブジェクトのバージョン ID が無効です。
-
解決策:GetBucketVersions (ListObjectVersions) オペレーションを呼び出して、バケットでバージョン管理が有効になっているか、および指定されたオブジェクトのバージョン ID が正しいかを確認してください。
デフォルトの sse アルゴリズムが KMS でない場合、KMSMasterKeyID は適用されません
-
原因:サーバー側暗号化 (SSE) アルゴリズムが AES256 に設定されているときに KMSMasterKeyID パラメーターが指定されています。
-
解決策:KMSMasterKeyID パラメーターは、SSE アルゴリズムが KMS に設定され、指定されたキーが暗号化に使用される場合にのみ必須です。
ユーザーがホワイトリストにない場合、KMSMasterKeyID は適用されません。または、ユーザーがホワイトリストにない場合、SM4 は適用されません
-
原因:ユーザーが必要な権限を持っていません。
-
解決策:バケットの暗号化ルールを設定できるのは、バケットの所有者または承認された RAM ユーザーのみです。詳細については、「PutBucketEncryption」をご参照ください。
そのようなバケットストレージクラスは存在しません
-
原因:指定されたバケットストレージクラスが存在しません。
-
解決策:OSS は、標準ストレージ、低頻度アクセス (IA)、アーカイブストレージ、コールドアーカイブストレージ、ディープコールドアーカイブストレージのストレージクラスをサポートしています。詳細については、「PutBucket」をご参照ください。
OSS 認証には有効な Date が必要です
-
原因:Authorization ヘッダーの Date が無効です。
-
解決策: Date パラメーターは操作の時間を示し、たとえば
Sun, 22 Nov 2015 08:16:38 GMTのように、GMT フォーマットである必要があります。
Post ボディサイズは 5G 未満でなければなりません
-
原因:PostObject リクエストのボディの合計長が 5 GB を超えています。
-
解決策:PostObject リクエストのボディの合計長は 5 GB を超えることはできません。詳細については、「PostObject」をご参照ください。
Post リクエストの accessKeyId が空です
-
原因:PostObject リクエストヘッダーに OSSAccessKeyId フォームフィールドがありません。
-
解決策:バケットが公開読み書きでない場合、または Policy (または Signature) フォームフィールドが提供されている場合、OSSAccessKeyId フォームフィールドは必須です。
Post リクエストの署名が空です
-
原因:PostObject リクエストヘッダーに署名情報がありません。
-
解決策:バケットが公開読み書きでない場合、または OSSAccessKeyId (または Policy) フォームフィールドが提供されている場合、Signature フォームフィールドは必須です。署名を計算する手順は以下の通りです:
-
UTF-8 エンコーディングでポリシーを作成します。
-
ポリシーを Base64 エンコードします。結果が Policy フォームフィールドの値になります。この値を署名対象の文字列として使用します。
-
AccessKey Secret を使用して文字列に署名します。署名メソッドは
Signature = base64(hmac-sha1(base64(policy), AccessKeySecret))です。
-
プライベートアドレスへのコールバックは禁止されています
-
原因:OSS はプライベート IP アドレスにコールバックリクエストを送信できません。
-
解決策:パブリック IP アドレスを使用してコールバックリクエストを送信してください。
バケット POST には認識されないフィールド名が含まれています
-
原因:
filenameフィールドに続く行にカスタムパラメーターが含まれています。 -
解決策:
filenameフィールドの次の行には、次の例に示すように、標準のContent-Typeパラメーターを指定する必要があります。POST / HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Content-Length: 344606 Content-Type: multipart/form-data; boundary=9431149156168 --9431149156168 Content-Disposition: form-data; name="key" /user/a/objectName.txt --9431149156168 Content-Disposition: form-data; name="success_action_status" 200 --9431149156168 Content-Disposition: form-data; name="Content-Disposition" content_disposition --9431149156168 Content-Disposition: form-data; name="x-oss-meta-uuid" uuid --9431149156168 Content-Disposition: form-data; name="x-oss-meta-tag" metadata --9431149156168 Content-Disposition: form-data; name="OSSAccessKeyId" 44CF9590006BF252F707 --9431149156168 Content-Disposition: form-data; name="policy" eyJleHBpcmF0aW9uIjoiMjAxMy0xMi0wMVQxMjowMDowMFoiLCJjb25kaXRpb25zIjpbWyJjb25kaXRpb25zIjpbWyJjb25kaXRpb25zIjpbWyJjb250ZW50LWxlbmd0aC1yYW5nZSIsIDAsIDEwNDg1NzYwXV19 --9431149156168 Content-Disposition: form-data; name="Signature" kZoYNv66bsmc10+dcGKw5x2PRrk= --9431149156168 Content-Disposition: form-data; name="file"; filename="MyFilename.txt" Content-Type: text/plain abcdefg --9431149156168 Content-Disposition: form-data; name="submit" Upload to OSS --9431149156168--
バケット POST には指定された 'key' が含まれている必要があります。指定されている場合は、フィールドの順序を確認してください
-
原因:PostObject リクエストに key フォームフィールドが指定されていないか、key フォームフィールドの順序が正しくありません。
-
解決策:PostObject リクエストに key フォームフィールドを指定してください。key フォームフィールドは file フォームフィールドの前に置く必要があります。詳細については、「PostObject」をご参照ください。
バケット POST には指定されたフィールド名が含まれている必要があります
-
原因:POST リクエストフォームに無効なパラメーターまたは不正な形式のパラメーターが含まれています。
-
解決策:パラメーターを標準形式で指定してください。詳細については、「PostObject」をご参照ください。
コールバックボディが空です
-
原因:callbackBody パラメーターが指定されていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列でなければなりません。コールバック用のサーバー URL (callbackUrl) とコールバックの内容 (callbackBody) を指定する必要があります。
コールバックボディが無効です
-
原因:callbackBody パラメーターが無効で、JSON として解析できません。
-
解決策: callbackBody パラメーターは、コールバックが開始されるときのリクエストボディの値を指定します (例:
key=$(object)&etag=$(etag)&my_var=$(x:my_var))。コールバックをご参照ください。
コールバックボディタイプの構成が無効です。または、コールバックのボディタイプがサポートされていません
-
原因:callbackBodyType パラメーターが無効で、JSON として解析できません。
-
callbackBodyType パラメーターは、コールバックリクエストの Content-Type を指定します。サポートされている値は
application/x-www-form-urlencodedとapplication/jsonです。
コールバック設定が base64 エンコードされていません
-
原因:Callback パラメーターが Base64 エンコードされていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列でなければなりません。コールバック用のサーバー URL とコールバックの内容を指定する必要があります。詳細については、「コールバック」をご参照ください。
コールバック設定が json 形式ではありません
-
原因:Callback パラメーターが JSON 形式ではありません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列でなければなりません。例:
{ "callbackUrl":"121.101.XX.XX/test.php", "callbackHost":"oss-cn-hangzhou.aliyuncs.com", "callbackBody":"{\"mimeType\":${mimeType},\"size\":${size}}", "callbackBodyType":"application/json" }
コールバックホストの構成が無効です
-
原因:callbackHost パラメーターが無効で、JSON として解析できません。
-
解決策: callbackHost パラメーターは、コールバックリクエストの Host ヘッダーを指定します。たとえば、
oss-cn-hangzhou.aliyuncs.comです。callbackHost が設定されていない場合、callbackUrl から解析された Host が callbackHost の値として使用されます。
コールバック署名バージョンが無効です
-
原因:署名バージョンがサポートされていません。
-
解決策:現在の署名がバージョン 1.0 または 2.0 であることを確認してください。
コールバック URL の構成が無効です
-
原因:Callback パラメーターにコールバック用のサーバー URL (callbackUrl) が指定されていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列でなければなりません。コールバック用のサーバー URL とコールバックの内容を指定する必要があります。
コールバック var が予期される json ではありません
-
原因:callback-var パラメーターが JSON 形式ではありません。
-
解決策: `callback-var` パラメーターを使用してカスタムパラメーターを設定します。カスタムパラメーターはキーと値のペアとして指定されます。キーは
x:で始まり、小文字である必要があります。たとえば、2 つのキーx:var1とx:var2に、対応する値 value1 と value2 を設定する場合、JSON フォーマットは次のようになります。{ "x:var1":"value1", "x:var2":"value2" }
永続ヘッダーの形式が無効です。\"name:Base64Encode(value),name:Base64Encode(value)...\" である必要があります。または、永続ヘッダーで指定されたヘッダー値が base64 エンコードされていません
-
原因:カスタムヘッダーの形式が正しくありません。
-
解決策:カスタムヘッダーのフォーマットは
x-oss-persistent-headers: key1:base64_encode(value1),key2:base64_encode(value2)....です。このフォーマットでは、key1 と key2 はカスタムヘッダーで、value1 と value2 はそれらに対応する値です。base64_encode は、カスタムヘッダーの値が Base64 エンコードされていることを示します。たとえば、カスタムヘッダーが myheader1 と myheader2 で、その値が myvalue1 と myvalue2 の場合、カスタムリクエストヘッダーはx-oss-persistent-headers:myheader1:bXl2YWx1ZTE=,myheader2:bXl2YWx1ZTI=になります。
ヘッダー 'x-oss-tagging' は UTF-8 でエンコードされ、その後、タグ名の重複なしに URL エンコードされた URL クエリパラメーターでなければなりません
-
原因:タグのキーと値が URL エンコードされておらず、キーが重複しています。
-
解決策:オブジェクトタグ付けは、キーと値のペアのセットを使用してオブジェクトをマークします。オブジェクトタグには以下のルールが適用されます:
-
オブジェクトには最大 10 個のタグを付けることができます。キーは一意でなければなりません。
-
各キーは最大 128 文字、各値は最大 256 文字の長さにすることができます。
-
キーと値は大文字と小文字を区別します。
-
タグの有効な文字セットには、大文字、小文字、数字、スペース、および次の特殊文字が含まれます:+ - = . _ : / HTTP ヘッダーを使用してタグを設定し、タグにこれらの文字のいずれかが含まれている場合は、タグのキーと値を URL エンコードする必要があります。
-
永続ヘッダーで指定されたヘッダーは有効な HTTP トークンではありません
-
原因:カスタムヘッダーに無効な文字が含まれています。
-
解決策:OSS は RFC 7230 仕様に準拠しており、この仕様に基づいて HTTP ヘッダーに無効な文字が含まれているかどうかを判断します。
永続ヘッダーで指定されたヘッダーは予約されています
-
原因:カスタムヘッダーが標準の HTTP ヘッダーと競合しています。
-
解決策:カスタムヘッダーに、
Host、Content-MD5、Origin、またはRangeなどの標準 HTTP ヘッダーを指定しないでください。
永続ヘッダーで指定されたヘッダー値に CR または LF が含まれています
-
原因: カスタムヘッダーの値にキャリッジリターン
\rまたは改行\nが含まれています。 -
解決策: カスタムヘッダーの値からキャリッジリターン
\rと改行\nを削除します。
永続ヘッダーで指定されたヘッダー値がリクエストヘッダー値と等しくありません
-
原因:カスタムヘッダーがリクエストヘッダーと同じ名前を持っていますが、値が異なります。
-
解決策:カスタムヘッダーがリクエストヘッダーと同じ名前を持つ場合、それらの値は同じでなければなりません。
永続ヘッダーで指定されたヘッダー値が utf-8 エンコードされていません
-
原因:カスタムヘッダーの値が無効です。
-
解決策:カスタムヘッダーの値に含まれる中国語文字などの特殊文字を UTF-8 エンコードしてください。
コールバックの長さが最大値を超えています
-
原因:Base64 エンコードされた callback パラメーターの合計長が 5 KB を超えています。
-
解決策:Base64 エンコードされた callback パラメーターの合計長は 5 KB を超えることはできません。
コールバック var の長さが最大値を超えています
-
原因:Base64 エンコードされた callback-var パラメーターの合計長が 5 KB を超えています。
-
解決策:Base64 エンコードされた callback-var パラメーターの合計長は 5 KB を超えることはできません。
コールバック URL の数が最大値を超えています
-
原因:リクエストされたコールバック URL の数が 5 を超えています。
-
解決策:OSS では、同時に最大 5 つの URL を設定できます。各 URL はセミコロン (;) で区切ります。
Versioning 要素を指定する必要があります
-
原因:<VersioningConfiguration> フィールドにバケットのバージョン管理ステータスが指定されていません。
-
解決策:<VersioningConfiguration> フィールドにバケットのバージョン管理ステータスを指定してください。例:
PUT /?versioning HTTP/1.1 Host: bucket-versioning.oss-cn-hangzhou.aliyuncs.com Date: Tue, 09 Apr 2019 02:20:12 GMT Authorization: OSS qn6q**************:77Dv**************** <?xml version="1.0" encoding="UTF-8"?> <VersioningConfiguration> <Status>Enabled</Status> <VersioningConfiguration>
Authorization ヘッダーに不明なパラメーターがあります
-
原因:Authorization ヘッダーの計算メソッドに不明なパラメーターが存在します。
-
解決策:以下の表のパラメーター説明に基づいて、Authorization ヘッダーの計算を完了してください。
パラメーター
タイプ
必須
例
説明
AccessKeyId
文字列
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
文字列
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
列挙型
はい
PUT
PUT、GET、POST、HEAD、DELETE、OPTIONS などの HTTP リクエストメソッド。
\n
文字列
いいえ
\n
改行。
Content-MD5
文字列
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージ本文 (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。詳細については、「RFC2616 Content-MD5」をご参照ください。
このリクエストヘッダーは、メッセージの整合性 (メッセージ本文が送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
詳細については、「Content-MD5 ハッシュの計算」をご参照ください。
Content-Type
文字列
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
文字列
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
文字列
いいえ
x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n
x-oss-で始まり、辞書式順序でソートされた HTTP ヘッダー。このパラメーターは空にすることができます。-
CanonicalizedOSSHeaders を空に設定した場合、末尾に
\n区切り文字を追加する必要はありません。 -
CanonicalizedOSSHeaders が 1 つしかない場合は、末尾に
\n区切り文字を追加する必要があります。例:x-oss-meta-a\n。 -
複数の CanonicalizedOSSHeaders がある場合は、各 CanonicalizedOSSHeaders の後に
\n区切り文字を追加する必要があります。例:x-oss-meta-a:a\nx-oss-meta-b:b\nx-oss-meta-c:c\n。
詳細については、「CanonicalizedOSSHeaders の構築」をご参照ください。
CanonicalizedResource
文字列
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
詳細については、「CanonicalizedOSSHeaders の構築」をご参照ください。
-
バージョン ID を空の文字列にすることはできません
-
原因:VersionId フィールドが指定されていません。
-
解決策:VersionId フィールドにオブジェクトのバージョン ID を指定してください。詳細については、「ListObjectVersions (GetBucketVersions)」をご参照ください。
x-oss-traffic-limit が無効です。819200 (100KB/s) から 838860800 (100MB/s) の間で指定する必要があります
-
原因:単一接続の帯域制限の値が無効です。
-
解決策:単一接続の帯域制限の値は 819,200 から 838,860,800 の範囲でなければなりません。これは 100 KB/s から 100 MB/s に相当します。
x-oss-traffic-limit はクエリ文字列またはヘッダーのいずれかで指定する必要がありますが、両方では指定できません
-
原因: 単一接続の帯域制限パラメーター
x-oss-traffic-limitは、リクエスト URL とリクエストヘッダーの両方に含まれています。 -
解決策: 単一接続の帯域制限パラメーター
x-oss-traffic-limitは、リクエスト URL またはリクエストヘッダーのいずれか一方にのみ含めることができます。
InvalidBucketName
提供されたバケット名が OSS の命名規則に準拠していない場合に返されます。
指定されたバケットは無効です
-
原因:バケット名が命名規則に準拠していません。
-
解決策:バケット名が命名規則に準拠していることを確認してください。バケット名には以下のルールが適用されます:
-
小文字、数字、ハイフン (-) のみを含めることができます。
-
小文字または数字で始まり、終わる必要があります。
-
長さは 3 から 63 文字でなければなりません。
-
InvalidBucketStatus
バケットのステータスが特定の操作の要件を満たしていない場合に返されます。
drs タグ付けルールが存在する場合、ソースバケットと宛先バケットはバージョン管理が有効である必要があります
-
原因:CRR のソースバケットとターゲットバケットのバージョン管理ステータスが一致していません。
-
解決策:CRR の場合、ソースバケットとターゲットバケットの両方でバージョン管理を有効にするか無効にする必要があります。
InvalidChannelName
LiveChannel 名が命名規則に準拠していない場合に返されます。
ChannelName は空であってはなりません
-
原因:チャンネル名フィールドがありません。
-
解決策:命名規則に従ってチャンネル名を指定してください。
-
UTF-8 エンコーディングを使用します。
-
長さは 1 から 64 文字でなければなりません。
-
フォワードスラッシュ (/) やバックスラッシュ (\) を含めることはできません。
-
ChannelName にはスラッシュを含めることはできません
-
原因:チャンネル名にスラッシュが含まれています。
-
解決策:チャンネル名にフォワードスラッシュ (/) やバックスラッシュ (\) が含まれていないことを確認してください。
文字エンコーディングは utf-8 でなければなりません
-
原因:チャンネル名のエンコーディングが正しくありません。
-
解決策:チャンネル名は UTF-8 エンコードされている必要があります。
チャンネル名の長さは 64 未満でなければなりません
-
原因:チャンネル名の長さが制限を超えています。
-
解決策:チャンネル名の長さが 1 から 64 文字であることを確認してください。
InvalidCRC64
データ転送中に CRC-64 値が一致しない場合に返されます。
指定した x-oss-hash-crc64ecma が計算結果と一致しません
-
原因:ローカルで計算された CRC-64 値が、サーバーから返された CRC-64 値と一致しません。
-
解決策:詳細については、「CRC-64 を使用したデータ整合性の検証」をご参照ください。
InvalidDataEncryptionAlgorithmError
指定されたデータ暗号化アルゴリズムがサポートされていない場合に返されます。
指定した KMS データ暗号化リクエストは無効です。サポートされている値:SM4
-
原因:指定されたオブジェクト暗号化アルゴリズムが無効です。
-
解決策:オブジェクトが KMS を使用して暗号化される場合、SM4 暗号化アルゴリズムのみがサポートされます。詳細については、「サーバー側暗号化」をご参照ください。
InvalidDigest
リクエストの Content-MD5 値がサーバーで計算された結果と一致しない場合に返されます。
指定した Content-MD5 は無効でした
-
原因:アップロードの Content-MD5 リクエストヘッダーが、OSS によって計算されたメッセージ本文の Content-MD5 ハッシュと一致しません。
-
解決策:詳細については、「Content-MD5 ハッシュの計算」をご参照ください。
InvalidEncryptionAlgorithmError
指定されたサーバー側暗号化アルゴリズムが無効な場合に返されます。
指定された暗号化アルゴリズムは無効です。または、指定した暗号化リクエストは無効です。サポートされている値:AES256/SM4/KMS
-
原因:
x-oss-server-side-encryptionパラメーターに指定された値は無効です。 -
解決策:
x-oss-server-side-encryptionに指定できる有効な値は AES256、KMS、SM4 です。「PutObject」をご参照ください。
InvalidEncryptionRequest
クライアント側の暗号化リクエストに必要なパラメーターがない場合、またはパラメーターが正しく設定されていない場合に返されます。
クライアント暗号化はアップロードパートコピーをサポートしていません
-
原因:クライアントで暗号化されたソースファイルに対して UploadPartCopy オペレーションを呼び出すことはできません。
-
解決策:UploadPartCopy オペレーションは、クライアントで暗号化されていないソースファイルに対してのみ呼び出して、既存のオブジェクトからデータをコピーしてパートをアップロードすることができます。詳細については、「UploadPartCopy」をご参照ください。
必要なクライアント暗号化メタパラメーターの一部がありません
-
原因:クライアント側の暗号化に必要なパラメーターがありません。
-
解決策:以下の必須パラメーターがすべて指定されていることを確認してください。
パラメーター
説明
x-oss-meta-client-side-encryption-key
暗号化されたキー。これはマスターキーで暗号化され、その後 Base64 エンコードされた文字列です。
x-oss-meta-client-side-encryption-start
データ暗号化に使用されるランダムに生成された初期値。これはマスターキーで暗号化され、その後 Base64 エンコードされた文字列です。
x-oss-meta-client-side-encryption-cek-alg
データ暗号化アルゴリズム。
x-oss-meta-client-side-encryption-wrap-alg
データキーの暗号化アルゴリズム。
クライアント暗号化メタの data_size または part_size が無効です
-
原因:クライアント側の暗号化メタデータに入力された合計ファイルサイズまたはパートサイズが無効です。
-
解決策:クライアント側のマルチパートアップロードを実行する場合、マルチパートアップロードの初期化中に大きなファイルの合計サイズ (x-oss-meta-client-side-encryption-data-size) とパートサイズ (x-oss-meta-client-side-encryption-part-size) を渡す必要があります。パートサイズは 16 の整数倍でなければなりません。詳細については、「クライアント側暗号化 (Java SDK V1)」をご参照ください。
クライアント暗号化メタが init_multipart で設定されたものと一致しません
-
原因:クライアント側の暗号化用に設定されたパート暗号化情報が、マルチパートアップロードの初期化時に設定された暗号化情報と一致しません。
-
解決策:クライアント用に設定されたパート暗号化情報が、マルチパートアップロードの初期化時に設定された暗号化情報と一致していることを確認してください。詳細については、「クライアント側暗号化 (Java SDK V1)」をご参照ください。
クライアント暗号化パートリストが init_multipart で設定されたものと予期せず異なります
-
原因:実際にアップロードされたパートの数が、マルチパートアップロードの初期化時に指定されたパートの数と一致しません。
-
解決策:指定されたパートの数が、実際にアップロードされたパートの数と一致していることを確認してください。
最後の partSize は init_multipart で設定されたものと同じでなければなりません
-
原因:実際にアップロードされたすべてのパートの合計サイズが、マルチパートアップロードの初期化時に指定された合計パートサイズと一致しません。
-
解決策:最後のパートをアップロードした後、実際にアップロードされたすべてのパートの合計サイズが、マルチパートアップロードの初期化時に指定された合計パートサイズと一致していることを確認してください。詳細については、「CompleteMultipartUpload」をご参照ください。
クライアント暗号化のパラメーターは一度だけ設定できます
-
原因:CopyObject オペレーションを使用してクライアント側の暗号化メタデータを変更しようとしました。
-
解決策:ファイルがクライアント側の暗号化でアップロードされた後、暗号化メタデータは保護され、CopyObject オペレーションを使用してオブジェクトのメタデータを変更することはできません。詳細については、「CopyObject」をご参照ください。
partId は expectedPartNumber 以下でなければなりません
-
原因:パート ID がパートの総数 (PartNumber) より大きいです。
-
解決策:パート ID がパートの総数以下であることを確認してください。詳細については、「UploadPart」をご参照ください。
クライアント暗号化メタによって計算されたパート数が大きすぎます
-
原因:クライアント側の暗号化メタデータに入力されたパート数が制限を超えています。
-
解決策:各オブジェクトは最大 10,000 パートに分割できます。
最後のパートを除き、partSize は init_multipart で設定されたものと同じでなければなりません
-
原因:実際にアップロードされた各パートのサイズが、マルチパートアップロードの初期化時に指定された各パートのサイズと一致しません。
-
解決策:最後のパートを除き、他のすべてのパートのサイズは、マルチパートアップロードの初期化時に指定された各パートのサイズと一致している必要があります。詳細については、「UploadPart」をご参照ください。
InvalidHostPutBucket
バケットを作成するために不正なドメイン名を使用した場合に返されます。
ホストが無効です。バケットを配置するには Open Storage Service の標準ホストを使用してください
-
原因:Host パラメーターが正しくありません。
-
解決策:標準のエンドポイントを使用してください。詳細については、「エンドポイントとデータセンター」をご参照ください。
InvalidObjectName
提供されたオブジェクト名が OSS の命名規則に準拠していない場合に返されます。
オブジェクト名の長さは 1024 未満でなければなりません
-
原因:オブジェクト名の長さが制限を超えています。
-
解決策:オブジェクト名の長さが 1 から 1,023 文字であることを確認してください。
オブジェクト名を空にすることはできません
-
原因:オブジェクト名が指定されていません。
-
解決策:オブジェクトの命名規則に従ってオブジェクト名を指定してください。
指定されたオブジェクトは無効です
-
原因:指定されたオブジェクト名が無効です。
-
解決策:オブジェクト名が命名規則に準拠していることを確認してください。オブジェクト名には以下のルールが適用されます:
-
UTF-8 エンコーディングを使用します。
-
長さは 1 から 1,023 文字でなければなりません。
-
フォワードスラッシュ (/) やバックスラッシュ (\) で始めることはできません。
-
InvalidParameter
リクエストで提供されたパラメーター値が無効であるか、要件を満たしていない場合に返されます。
指定されたパラメーター KMS keyId は無効です
-
原因:指定された CMK ID が無効です。
-
解決策: KMS を使用して指定されたキーでオブジェクトを暗号化する場合、CMK ID を入力する必要があります。CMK ID の例:
9468da86-3509-4f8d-a61e-6eab1eac****。
InvalidPart
マルチパートアップロード中にパート情報が無効な場合に返されます。
指定されたパートの 1 つ以上が見つからないか、指定されたエンティティが見つかりません
-
原因:CompleteMultipartUpload によって送信されたパートが、不正な PartNumber または ETag のために無効です。
-
解決策:CompleteMultipartUpload オペレーションが呼び出されると、サーバーは PartNumber と ETag を検証します。
-
PartNumber は 1 から 10,000 までの整数でなければなりません。PartNumber は連続している必要はありませんが、昇順でなければなりません。たとえば、最初のパートの PartNumber は 1、2 番目のパートの PartNumber は 5 にすることができます。
-
CompleteMultipartUpload リクエストによって作成されたオブジェクトの場合、ETag 値はそのコンテンツの UUID です。ETag 値は、オブジェクトのコンテンツが変更されたかどうかを確認するために使用できます。
-
InvalidPartOrder
マルチパートアップロードのパート番号またはその順序が要件を満たしていない場合に返されます。
パート番号は 1 から 10000 までの整数でなければなりません
-
原因:PartNumber が無効です。
-
解決策:PartNumber が 1 から 10,000 までの整数であることを確認してください。詳細については、「CompleteMultipartUpload」をご参照ください。
パートのリストが昇順ではありませんでした
-
原因:CompleteMultipartUpload によって送信されたパートが、パート番号の昇順でソートされていません。
-
解決策:CompleteMultipartUpload によって送信されるパートは、パート番号の昇順でソートされている必要があります。たとえば、最初のパートの PartNumber は 1、2 番目のパートの PartNumber は 5 にすることができます。詳細については、「CompleteMultipartUpload」をご参照ください。
InvalidPolicyDocument
リクエストのポリシードキュメントの形式が正しくないか、内容が無効な場合に返されます。
無効なポリシー:無効な JSON:, または ] が予期されます
-
原因:リクエストのポリシーの形式が正しくありません。
-
解決策:ポリシーに
,または]が欠落していないか確認します。
無効なポリシー:無効な JSON:不明な文字 e
-
原因:リクエストのポリシーの形式が正しくありません。
-
解決策: ポリシーのフォーマットを確認し、
"が欠落していないか、またはエスケープ文字に\が欠落していないかを確認します。
無効なポリシー:無効な Simple-Condition:Simple-Conditions には正確に 1 つのプロパティが指定されている必要があります
-
原因: リクエストポリシーに
conditionsが含まれていません。 -
解決策: リクエストポリシーには、少なくとも 1 つの
conditions要素を含める必要があります。
不正なリクエスト
このエラーは、リクエストパラメーターが不正に設定されているか、指定されたシナリオに対して無効であることを示します。
TS ファイルを含む Master プレイリスト
-
原因:Master プレイリストに M3U8 ファイルと TS ファイルの両方が含まれています。
-
ソリューション:Master プレイリストには、TS ビデオファイルの情報を記録する M3U8 ファイルのみを含める必要があります。詳細については、「OSS に基づく HLS ストリームの構築」をご参照ください。
プレイリストに ts が見つからない
-
原因: .ts ファイルが見つかりませんでした。
-
解決策: PutLiveChannel を使用して、アップストリーミングで音声または動画ファイルをアップロードしてください。
プレイリスト名は「.m3u8」で終わる必要があります
-
原因: ファイル名が
.m3u8で終わっていません。 -
ソリューション: HLS ダンプタイプでは、ファイル名を
.m3u8で終わらせ、長さを 6~128 文字にする必要があります。 例:playlist.m3u8。
匿名の GET リクエストでリクエスト指定のレスポンスヘッダーが使用できない
-
原因:リクエストに必須パラメーターがありません。
-
解決策:API オペレーションにすべての必須パラメーターが指定されているか確認してください。 詳細については、「API の概要」をご参照ください。
クエリ文字列パラメーターでの security-token の指定
-
原因: security-token パラメーターが欠落しています。
-
ソリューション: 一時ユーザーが署名付き URL を使用する場合、security-token パラメーターを含める必要があります。一時ユーザー向けの署名付き URL のフォーマットは次のとおりです:
http://oss-example.oss-cn-hangzhou.aliyuncs.com/oss-api.pdf?OSSAccessKeyId=LTAI****************&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv****&security-token=SecurityToken。詳細については、「URL に署名を含める」をご参照ください。
プレイリストのサイズが大きすぎる
-
原因:プレイリストファイルサイズが上限を超えています。
-
解決策:プレイリストファイルサイズが 1 MB を超えないようにしてください。
InvalidTag
このエラーは、バケットタグのキーまたは値が命名規則に準拠していない場合に発生します。
無効な TagKey または TagValue
-
原因:バケットタグのキーまたは値が無効です。
-
ソリューション:バケットタグが以下の命名ルールに準拠していることを確認してください。
-
キーと値は UTF-8 でエンコードされている必要があります。
-
キーの長さは最大 64 文字で、
http://、https://、またはAliyunで始めることはできず、空にすることもできません。 -
値の長さは最大 128 文字で、空にすることもできます。
-
InvalidTaggingKey
オブジェクトタグのキーが命名規則に準拠していない場合に返されます。
指定されたタグキーが無効
-
原因:オブジェクトタグのキーが無効です。
-
解決策:オブジェクトのタグ付けでは、キーと値のペアを使用してオブジェクトをマークします。オブジェクトタグには、次のルールが適用されます。
-
キーの長さは最大 128 文字、値の長さは最大 256 文字です。
-
キーと値では大文字と小文字が区別されます。
-
タグに使用できる有効な文字セットには、大文字、小文字、数字、スペース、および次の特殊文字が含まれます:+、-、=、.、_、:、/。これらの特殊文字のいずれかを含むタグを HTTP ヘッダーを使用して設定する場合は、タグのキーと値を URL エンコードする必要があります。
-
InvalidTargetBucket
このエラーは、リージョン間レプリケーション (CRR) の送信先バケットが無効な場合に発生します。
レプリケーションの送信先バケットが無効
-
原因:指定された送信先バケットが、レプリケーション先として無効です。
-
ソリューション:GetBucketReplicationLocation 操作を呼び出して、レプリケーションに有効な送信先リージョンを取得してください。
InvalidTargetBucketForLogging
このエラーは、ログの送信先バケットが存在しない場合、またはそのバケットにアクセスするために必要な権限がない場合に発生します。
バケットログのリクエスタがターゲットバケットの所有者ではない
-
原因:ログの送信先バケットが存在しません。
-
解決策:有効な送信先バケットを指定します。
InvalidTargetLocation
このエラーは、指定されたバケットがターゲットリージョンに存在しない場合に発生します。
指定されたターゲットバケットがターゲットロケーションに存在しない
-
原因:バケットがターゲットリージョンに存在しません。
-
ソリューション:バケットが存在するリージョンを確認してください。
InvalidTargetType
シンボリックリンクが指すターゲットオブジェクトのタイプが無効な場合に返されます。
シンボリックリンクのターゲットファイルタイプが無効
-
原因:シンボリックリンクが別のシンボリックリンクを指しています。
-
解決策:シンボリックリンクのターゲットが、別のシンボリックリンクでないことを確認してください。
InvalidWORMConfiguration
このエラーは、保持ポリシーの構成が無効であることを示します。
無効な WORM 構成
-
原因:保持ポリシーが無効です。
-
解決策:次のコードは、InitiateBucketWorm 操作を使用して保持ポリシーを作成する例です。
POST /?worm HTTP/1.1 Date: Thu, 15 May 2014 11:18:32 GMT Content-Length: 556 Content-Type: application/xml Host: BucketName.oss.aliyuncs.com Authorization: OSS qn6q**************:77Dv**************** <InitiateWormConfiguration> <RetentionPeriodInDays>365</RetentionPeriodInDays> </InitiateWormConfiguration>
InvalidXMLFormat
リクエストパラメーターが有効な XML フォーマットではない場合に返されます。
提供された XML が整形式ではない
-
原因:リクエストパラメーターが有効な XML フォーマットではありません。
-
ソリューション:リクエストパラメーターが有効な XML フォーマットであることを確認してください。
InventoryExceedLimit
このエラーは、バケットに設定されたインベントリ ルールの数がシステム制限を超えた場合に発生します。
上限を超えて在庫を作成することはできません
-
原因:1 つのバケットのインベントリ ルールの数が上限である 1,000 件に達しています。
-
解決策:インベントリ ルールの数の上限を引き上げるには、チケットを送信してください。
KmsServiceNotEnabled
このエラーは、Key Management Service (KMS) を有効化せずに KMS 暗号化を使用すると発生します。
KMS サービスが有効化されていない
-
原因:KMS サービスを有効化する前に、KMS を使用してサーバー側暗号化を試みました。
-
解決策:「Key Management Service の有効化」を参照して、KMS サービスを有効化してください。
MalformedPOSTRequest
PostObject リクエストのフォームフィールドが正しくフォーマットされていない場合に返されます。
POST リクエスト本文の multipart/form-data 形式が不正
-
原因:PostObject リクエストのフォームフィールドが正しくフォーマットされていません。
-
解決策:フォームフィールドが必須のフォーマットに従っていることを確認してください。 フォームフィールドのフォーマットは次のとおりです:
Content-Disposition: form-data; name="{key}"\r\n\r\n{value}\r\n--{boundary}次のコードは、PostObject リクエストの例です:
POST / HTTP/1.1 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.6) Content-Type: multipart/form-data; boundary=9431149156168 Host: xxxx-hz.oss-cn-hangzhou.aliyuncs.com Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive Content-Length: 5052 --9431149156168 Content-Disposition: form-data; name="key" test-key --9431149156168 Content-Disposition: form-data; name="Content-Disposition" attachment;filename=D:\img\example.png --9431149156168 Content-Disposition: form-data; name="OSSAccessKeyId" 2NeL********j2Eb要件は次のとおりです:
-
ヘッダーには `Content-Type: multipart/form-data; boundary={boundary}` を含める必要があります。
-
ヘッダーと本文は
\r\n--{boundary}で区切られます。\r\n文字は改行を表します。 -
フォームフィールド名 (例:
policy、key、file、OSSAccessKeyId、OSSAccessKeyId、Content-Disposition) は大文字と小文字が区別されます。 -
fileフォームフィールドは、最後のフォームフィールドである必要があります。 -
バケットが
public-read-writeの場合、OSSAccessKeyId、policy、Signatureフォームフィールドを指定する必要はありません。 これらのフィールドのいずれかを指定した場合、バケットがpublic-read-writeであるかどうかにかかわらず、他の 2 つも指定する必要があります。
説明上記の例はリクエストの一部のみを示しています。 完全なリクエストについては、「PostObject」をご参照ください。
次のコード例をご参照ください:
-
MalformedXML
リクエスト内の XML フォーマットが無効であるか、公開されたスキーマに準拠していない場合に返されます。
提供された XML が整形式でない、または公開されたスキーマに対して検証されない
-
原因:リクエスト内の XML フォーマットが無効です。
-
解決策:このエラーをトラブルシューティングするには、関連するリクエストのドキュメントをご参照ください。
MaxPOSTPreDataLengthExceededError
PostObject リクエストにおいて、アップロードするファイルより前にあるフォームフィールドデータが大きすぎる場合に返されるエラーです。
アップロードファイルより前の POST リクエストフィールドが大きすぎる
-
原因: アップロードファイルが大きすぎます。Post メソッドを使用してアップロードできるファイルの最大サイズは 5 GB です。
-
ソリューション:PostObject エラーのトラブルシューティングをご参照ください。
MissingAccessKeyId
このエラーは、リクエストに AccessKey ID がないことを示します。
MissingAccessKeyId:このアクションには AccessKey ID が必須です
-
原因:AccessKey ID がありません。
-
解決策:正しい AccessKey ID を指定してください。
MissingArgument
このエラーは、API 呼び出しに必須パラメーターが欠落していることを示します。
一部の必須パラメーターの欠落
-
原因:API 呼び出しに必須パラメーターが欠落しています。
-
解決策:「API の概要」をご参照のうえ、すべての必須パラメーターを追加してください。
NoReplicationLocation
このエラーは、ソースバケットのリージョンに、リージョン間レプリケーション (CRR) 用のペアになるターゲットリージョンがない場合に発生します。
バケットに対応するレプリケーション先がない
-
原因:ソースバケットのデータセンターに、CRR 用のペアになるデータセンターがありません。
-
解決策:レプリケーションで利用可能なターゲットリージョンのリストを取得するには、「GetBucketReplicationLocation」をご参照ください。
NoReplicationRule
このエラーは、リクエストされたバケットにクロスリージョンレプリケーション (CRR) ルールが設定されていない場合に発生します。
レプリケーションルールが未指定
-
原因:リクエストされたバケットに CRR ルールが設定されていません。
-
解決策:バケットに CRR ルールを設定してください。 PutBucketReplication。
NotImplemented
リクエストに、まだ実装されていない機能やサポートされていない操作が含まれている場合に返されます。
ヘッダーによる未実装機能の示唆
-
原因:API リクエストで、不正なパラメーターまたはサポートされていないパラメーターが渡されました。
-
解決策:「API の概要」にある対応する API ドキュメントをご参照いただき、正しくサポートされているパラメーターフォーマットを使用してください。
NotSymlink
シンボリックリンクではないオブジェクトに対して、シンボリックリンク固有の操作が実行された場合に返されます。
オブジェクトがシンボリックリンクではない
-
原因:ターゲットオブジェクトがシンボリックリンクではありません。
-
解決策:PutSymlink または GetSymlink 操作がシンボリックリンクに対してのみ実行されるようにしてください。
OperationNotSupported
リクエストされた操作が現在のリソースタイプまたはステータスに適用できない場合に返されます。
リソースでサポートされていない操作
-
原因:リクエストされた操作は、指定されたリソースではサポートされていません。考えられるシナリオは次のとおりです。
-
アペンド可能オブジェクトまたはシンボリックリンクを、コールドアーカイブまたはディープコールドアーカイブのストレージクラスに変換しようとしました。
-
アーカイブストレージ、コールドアーカイブ、またはディープコールドアーカイブストレージにないオブジェクトを解凍するには、RestoreObject 操作を使用します。
-
-
ソリューション:
-
PutObject 操作を呼び出して同じ名前のオブジェクトをアップロードし、アペンド可能オブジェクトを通常オブジェクトで上書きします。その後、オブジェクトをコールドアーカイブまたはディープコールドアーカイブのストレージクラスに変換できます。
-
RestoreObject 操作を使用してファイルを解凍する場合は、そのファイルがアーカイブストレージ、コールドアーカイブ、またはディープコールドアーカイブのストレージクラスにあることを確認してください。
-
RepeatedTags
このエラーは、タグ構成に重複したキーが存在することを示します。
タグキーの一意性
-
原因:指定されたタグキーがすでに存在します。
-
解決策:GetBucketTags を呼び出してバケットの既存のタグを取得してから、PutBucketTags を呼び出して新しいタグを設定してください。
RequestIsNotMultiPartContent
PostObject リクエストの Content-Type が multipart/form-data ではない場合に返されます。
バケットへの POST は multipart/form-data 形式であること
-
原因: PostObject 操作で送信されたフォームが
multipart/form-dataとしてエンコードされていません。 -
解決策: PostObject 操作で送信するフォームは、
multipart/form-dataとしてエンコードする必要があります。ヘッダーのContent-Typeはmultipart/form-data;boundary=xxxxxxというフォーマットである必要があります。ここで、boundaryは境界文字列です。詳細については、「PostObject」をご参照ください。
RequestTimeout
このエラーは、ネットワークタイムアウトが原因で、リクエストが指定された時間内に完了しなかった場合に発生します。
タイムアウト期間内にサーバーへのソケット接続の読み書きが行われず、アイドル状態の接続がクローズされる
-
原因:ネットワーク環境またはネットワーク構成により、ネットワークタイムアウトが発生しました。
-
ソリューション: 「ネットワークタイムアウトの処理」をご参照ください。
TooManyBuckets
Alibaba Cloud アカウントで単一リージョンに作成されたバケット数が、指定された上限を超えた場合に返されます。
許可された上限を超えるバケット作成
TooManyCname
このエラーは、バケットにアタッチされているカスタムドメイン名の数が上限を超えた場合に発生します。
許可された CNAME の上限超過
-
原因:バケットにアタッチできるドメイン名の数が、最大値である 100 に達しました。
-
解決策:チケットを送信して、バケットのドメイン名の上限引き上げを申請してください。
TooManyFilterObjectTags
リージョン間レプリケーション (CRR) ルールで設定されたオブジェクトタグの数が上限を超えた場合に返されます。
バケットのレプリケーションルールにおけるフィルターオブジェクトタグ数の上限超過
-
原因:CRR ルールで設定されたオブジェクトタグの数が上限を超えています。
-
解決策:CRR ルールには、同期対象のオブジェクトをフィルターするために、最大 10 個のオブジェクトタグを追加できます。
TooManyIncomingReplication
バケットを送信先として使用するクロスリージョンレプリケーション (CRR) ルールの数が上限を超えた場合に返されます。
許可された上限を超える着信レプリケーションの作成
-
原因:バケットに関連付けられた CRR ルールの数が 100 に達しました。
-
解決策:1 つのバケットでサポートされる CRR ルールは最大 100 です。ビジネス要件がこの上限を超える場合は、チケットを送信してください。
TooManyOutgoingReplication
このエラーは、ソースバケットの送信クロスリージョンレプリケーション (CRR) ルールの数が上限を超えていることを示します。
許可上限を超えるバケットの送信レプリケーションを作成しようとしました。
-
原因:バケットに関連付けられている CRR ルールの数が上限である 100 に達しました。
-
解決策:1 つのバケットでサポートされる CRR ルールは最大 100 個です。ビジネス要件がこの上限を超える場合は、チケットを送信してください。
TooManyPipes
このエラーは、画像処理操作におけるパイプライン演算子の数が制限を超えた場合に発生します。
パイプ数の上限
-
原因:リクエストに多数の画像操作が含まれています。
-
解決策:リクエスト内の画像操作の数を減らしてください。
TooManyPrefixes
クロスリージョンレプリケーション (CRR) ルール内のプレフィックス数が上限を超えた場合に返されます。
バケットレプリケーションルールにおけるプレフィックス数の上限超過
-
原因:CRR ルールで 10 個を超えるプレフィックスが指定されています。
-
解決策:クロスリージョンレプリケーションでは、最大 10 個のプレフィックスを指定して、一致するオブジェクトのみを送信先バケットに同期できます。
TooManyReplicationRules
このエラーは、バケットに設定されたクロスリージョンレプリケーション (CRR) ルールの数が上限を超えた場合に発生します。
OSS でサポートされるレプリケーションルールは 1 つのみ
-
原因:1 つのバケットに複数のレプリケーションルールが設定されています。
-
ソリューション:1 つのバケットに設定できるレプリケーションルールは 1 つのみです。
TooManyTags
バケットのタグ数がシステム制限を超えた場合に返されます。
バケットのタグ数の制限超過
-
原因:バケットのタグ数が制限を超えています。
-
解決策:1 つのバケットに設定できるタグは最大 20 個です。詳細については、PutBucketTags をご参照ください。
UserKeyMustBeSpecified
削除操作でオブジェクト名が指定されていない場合に返されます。
ユーザーキーの指定が必要です
-
原因:削除操作でオブジェクト名が指定されていません。
-
解決策:削除するオブジェクトの名前を指定してください。DeleteMultipleObjects をご参照ください。
WeeklyInventoryExceedLimit
このエラーは、バケット内のオブジェクト数が、週次マニフェストファイルのエクスポート上限を超えた場合に発生します。
週次インベントリのオブジェクト数上限超過
-
原因:バケット内のオブジェクト数が、週次マニフェストファイルのエクスポート上限を超えています。
-
解決策:週次マニフェストファイルをエクスポートするには、バケット内のオブジェクト数が 500 億未満である必要があります。
バケットに 500 億以上のファイルが含まれている場合:
-
プレフィックスを照合して、オブジェクトをバッチでエクスポートしてください。
-
チケットを起票して、オブジェクトのエクスポート上限の引き上げをリクエストしてください。
-