OSS によって返される HTTP 400 エラーの原因と解決策。
BadReplicationLocation
CRR 設定で指定されたターゲットリージョンが存在しない場合に返されます。
The replication location you choose is invalid
-
原因:クロスリージョンレプリケーション (CRR) 設定で指定されたターゲットリージョンが存在しません。
-
解決策:ターゲットバケットのリージョンが有効であることを確認します。
BadRequest
リクエストに必要なクロスオリジンリクエストヘッダーがない場合に返されます。
Insufficient information. Origin request header needed
-
原因:クロスオリジンリクエストのプリフライトリクエストに 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
Insufficient information. Request Access-Control-Request-Method header needed
-
原因:クロスオリジンリクエストのプリフライトリクエストに Access-Control-Request-Method リクエストヘッダーがありません。
-
解決策:プリフライトリクエスト (OPTIONS) に Access-Control-Request-Method ヘッダーを追加して、実際のリクエストの HTTP メソッドを指定します。
BucketReplicationAlreadyExist
すでに CRR 関係にあるバケット間に重複したレプリケーションルールを作成した場合に返されます。
Bucket replication already exists
-
原因:ソースバケットとターゲットバケットの間に CRR 関係がすでに存在します。
-
解決策:新しい CRR ルールを設定するには、まず既存の CRR ルールを削除する必要があります。
CORSRuleBeyondLimit
バケットに設定された CORS ルールの数が制限を超えた場合に返されます。
The CORS Rules num is beyond limit
-
原因:バケットに設定された CORS ルールの数が制限を超えています。
-
解決策:1 つのバケットは最大 10 個の CORS ルールをサポートします。類似の設定を統合するか、不要なルールを削除してください。PutBucketCors。
DailyInventoryExceedLimit
バケット内のオブジェクト数が、日次マニフェストファイルのエクスポート制限を超えた場合に返されます。
daily inventory object count exceed limit
-
原因:バケット内のオブジェクト数が、日次マニフェストファイルのエクスポート制限を超えています。
-
解決策:マニフェストファイルを日次でエクスポートする場合、バケット内のオブジェクト数は 100 億未満である必要があります。
バケット内のオブジェクト数が 100 億以上の場合は、代わりにマニフェストファイルを週次でエクスポートしてください。
EntityTooLarge
アップロードされたオブジェクトが許可される最大サイズを超えた場合に返されます。
Your proposed upload exceeds the maximum allowed size or Source object Length exceeds the maximum allowed size
-
原因:アップロードされたオブジェクトのサイズが、許可される最大サイズを超えています。
-
解決策:PostObject オペレーションを使用してファイルをアップロードする場合、PostPolicy のフォームフィールドに有効な値を設定します。アップロードされるオブジェクトの許可サイズ範囲を指定するには、
content-length-range条件を使用します。付録:Post Policy。
EntityTooSmall
アップロードされたオブジェクトが許可される最小サイズより小さい場合に返されます。
Your proposed upload smaller than the minimum allowed size
-
原因:アップロードされたオブジェクトのサイズが、許可される最小サイズより小さいです。
-
解決策:PostObject オペレーションを使用してファイルをアップロードする場合、PostPolicy のフォームフィールドに有効な値を設定します。
content-length-range条件を使用して、アップロードされるオブジェクトの許可サイズ範囲を指定します。
FieldItemTooLong
PostObject リクエストのフォームフィールドがサイズ制限を超えた場合に返されます。
Your name of form field is too long
-
原因:PostObject リクエストのフォームフィールドが大きすぎます。
-
解決策:ファイル以外のフォームフィールドは 4 KB を超えることはできません。PostObject エラーのトラブルシューティング。
FilePartNotExist
マルチパートアップロード中にリクエストされたパートが削除された場合に返されます。
The Part you read had been deleted
-
原因:リクエストされたパートが削除されました。
-
解決策:必要なすべてのパートが正常にアップロードされ、削除されていないことを確認します。アップロードされたパートのステータスは、CompleteMultipartUpload オペレーションを呼び出すことで確認できます。
ImageTooLarge
画像処理中にソース画像がサイズ制限を超えた場合に返されます。
Maximal size of image supported is
-
原因:画像サイズが制限を超えています。
-
解決策:ソース画像ファイルが以下のサイズ制限を満たしていることを確認してください:
-
ソース画像ファイルのサイズは 20 MB を超えることはできません。
-
画像を回転させる場合、ソース画像の幅または高さは 4,096 ピクセルを超えることはできません。
-
ソース画像の片側の長さは 30,000 ピクセルを超えることはできません。
-
IncompleteBody
リクエストの Content-Length パラメーターで指定されたバイト数が、実際に送信されたバイト数と一致しない場合に返されます。
You did not provide the number of bytes specified by the Content-Length HTTP header
-
原因:Content-Length パラメーターで指定されたバイト数が、実際に送信されたバイト数と一致しません。
-
解決策:Content-Length パラメーターを、実際に送信されたバイト数に設定します。
IncorrectNumberOfFilesInPOSTRequest
PostObject リクエスト内のファイル数が無効な場合に返されます。
POST requires exactly one file upload per request
-
原因:PostObject リクエスト内のファイル数が無効です。PostObject リクエストには、
fileフォームフィールドを 1 つしか含めることができません。 -
解決策:PostObject リクエストに
fileフォームフィールドが 1 つだけ含まれていることを確認します。
InlineDataTooLarge
Inline data exceeds the maximum allowed size
-
原因:
-
オブジェクトサイズの制限超過:アップロードされたファイルのサイズが、現在のアップロード操作の制限を超えています。
-
ホットリンク保護設定の制限超過:Referer ホワイトリストとブラックリストの設定の合計サイズが 20 KB を超えています。
-
-
解決策:
-
シナリオ 1:オブジェクトサイズの制限超過
ファイルサイズに基づいてアップロード方法を調整します:
-
マルチパートアップロード:最大ファイルサイズは 48.8 TB です。
-
シナリオ 2:ホットリンク保護設定の制限超過
不要なホットリンク保護ルールを削除して、Referer ホワイトリストとブラックリストの合計データサイズが 20 KB を超えないようにします。
-
InvalidArgument
リクエストパラメーターが無効であるか、形式が正しくない場合に返されます。このエラーコードには、複数の特定のエラーメッセージが含まれます:
AccessKeyId or Signature is missing in Authorization header value
-
原因: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 header is invalid
-
原因:Authorization ヘッダーの計算メソッドで無効なパラメーターが指定されています。
-
解決策:以下の指示に基づいて Authorization ヘッダーの計算をトラブルシューティングします。
-
計算方法:
Authorization = "OSS " + AccessKeyId + ":" + Signature Signature = base64(hmac-sha1(AccessKeySecret, VERB + "\n" + Content-MD5 + "\n" + Content-Type + "\n" + Date + "\n" + CanonicalizedOSSHeaders + CanonicalizedResource)) -
パラメーターの説明:
パラメーター
タイプ
必須
例
説明
AccessKeyId
String
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
String
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
Enumeration
はい
PUT
HTTP リクエストメソッド。PUT、GET、POST、HEAD、DELETE、OPTIONS など。
\n
String
いいえ
\n
改行。
Content-MD5
String
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージコンテンツ (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。RFC2616 Content-MD5。
このリクエストヘッダーは、メッセージの整合性 (メッセージコンテンツが送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
String
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
String
はい
Sun, 22 Nov 2015 08:16:38 GMT
重要操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
String
いいえ
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
String
はい
/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 header is invalid, bad num of Items in Authorization header
-
原因:Authorization ヘッダーの計算メソッドで誤ったパラメーターが指定されています。
-
解決策:以下の表のパラメーター説明に基づいて Authorization ヘッダーの計算を完了します。
パラメーター
タイプ
必須
例
説明
AccessKeyId
String
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
String
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
Enumeration
はい
PUT
HTTP リクエストメソッド。PUT、GET、POST、HEAD、DELETE、OPTIONS など。
\n
String
いいえ
\n
改行。
Content-MD5
String
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージコンテンツ (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。RFC2616 Content-MD5。
このリクエストヘッダーは、メッセージの整合性 (メッセージコンテンツが送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
String
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
String
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
String
いいえ
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
String
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
-
Authorization header value is empty
-
原因:Authorization ヘッダーの計算メソッドで必須パラメーターが空です。
-
解決策:以下の表のパラメーター説明に基づいて Authorization ヘッダーの計算を完了します。
パラメーター
タイプ
必須
例
説明
AccessKeyId
String
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
String
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
Enumeration
はい
PUT
HTTP リクエストメソッド。PUT、GET、POST、HEAD、DELETE、OPTIONS など。
\n
String
いいえ
\n
改行。
Content-MD5
String
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージコンテンツ (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。RFC2616 Content-MD5。
このリクエストヘッダーは、メッセージの整合性 (メッセージコンテンツが送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
String
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
String
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
String
いいえ
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
String
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
-
Bad date format
-
原因:time パラメーターが無効です。
-
解決策:時刻形式は RFC 1123 標準に準拠する必要があります。例:
Sun, 06 Nov 1994 08:49:37 GMT。
Can not get ip by this host
-
原因:Host が無効です。
-
解決策:Host はバケットドメイン名または IP アドレスにすることができます。バケットドメイン名の形式は
BucketName.Endpointです。例:examplebucket.oss-cn-hangzhou.aliyuncs.com。Host が IP アドレスの場合、その IP アドレスが有効であることを確認してください。
Copy Source must mention the source bucket and key: /sourcebucket/sourcekey
-
原因:ファイルをコピーする際に、ソースバケットとソースオブジェクトが指定されていません。
-
解決策:ファイルをコピーする際には、x-oss-copy-source パラメーターを
/sourcebucket/sourcekey形式で指定する必要があります。たとえば、ソースバケットが examplebucket で、ソースオブジェクトが exampleobject の場合、x-oss-copy-source パラメーターを/examplebucket/exampleobjectに設定します。
Either the callback query string parameter or the x-oss-callback header should be specified, not both
-
原因:callback パラメーターがリクエスト URL とリクエストヘッダーの両方に含まれています。
-
解決策:callback パラメーターはリクエスト URL またはリクエストヘッダーのいずれかに含めることができますが、両方に含めることはできません。
Either the callback-var query string parameter or the x-oss-callback-var header should be specified, not both
-
原因:callback-var パラメーターがリクエスト URL とリクエストヘッダーの両方に含まれています。
-
解決策:callback-var パラメーターはリクエスト URL またはリクエストヘッダーのいずれかに含めることができますが、両方に含めることはできません。
Either the Signature query string parameter or the Authorization header should be specified, not both
-
原因
同じリクエスト内で、署名用の Authorization フィールドがリクエストヘッダーに存在し、署名用の OSSAccessKeyId、Expires、Signature フィールドがリクエスト URI に存在します。例:
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
Invalid Argument. Parameter is invalid
-
原因:パラメーターの形式が無効です。
-
解決策:API 概要で対応する API オペレーションを参照し、正しい形式でパラメーターを指定してください。
Invalid date. Cannot be later than the current time
-
原因:time パラメーターが無効です。UNIX タイムスタンプが現在時刻より後になっています。
-
解決策:UNIX タイムスタンプは現在時刻より前である必要があります。
Invalid date. Must be later than 1970-01-01 00:00:00
-
原因:time パラメーターが無効です。UNIX タイムスタンプが 0 未満です。
-
解決策:UNIX タイムスタンプは 0 より大きい必要があります。
Invalid version id specified
-
原因:指定されたオブジェクトのバージョン ID が無効です。
-
解決策:GetBucketVersions (ListObjectVersions) オペレーションを呼び出して、バケットのバージョン管理が有効になっているか、および指定されたオブジェクトのバージョン ID が正しいかを確認します。
KMSMasterKeyID is not applicable if the default sse algorithm is not KMS
-
原因:サーバー側暗号化 (SSE) アルゴリズムが AES256 に設定されているときに KMSMasterKeyID パラメーターが指定されています。
-
解決策:KMSMasterKeyID パラメーターは、SSE アルゴリズムが KMS に設定され、指定されたキーが暗号化に使用される場合にのみ必須です。
KMSMasterKeyID is not applicable if user is not in white list. or SM4 is not applicable if user is not in white list
-
原因:ユーザーに必要な権限がありません。
-
解決策:バケットの所有者または承認された RAM ユーザーのみが、バケットの暗号化ルールを設定できます。PutBucketEncryption。
No such bucket storage class exists
-
原因:指定されたバケットストレージクラスが存在しません。
-
解決策:OSS は、標準、低頻度アクセス (IA)、アーカイブストレージ、コールドアーカイブ、ディープコールドアーカイブストレージのストレージクラスをサポートしています。PutBucket。
OSS authentication requires a valid Date
-
原因:Authorization ヘッダーの Date が無効です。
-
解決策:Date パラメーターは操作の時刻を示し、GMT 形式である必要があります。例:
Sun, 22 Nov 2015 08:16:38 GMT。
Post body size must be less than 5G
-
原因:PostObject リクエストの本文の合計長が 5 GB を超えています。
-
解決策:PostObject リクエストの本文の合計長は 5 GB を超えることはできません。PostObject。
Post request accessKeyId is empty
-
原因:PostObject リクエストヘッダーに OSSAccessKeyId フォームフィールドがありません。
-
解決策:バケットが公開読み書きでない場合、または Policy (または Signature) フォームフィールドが提供されている場合、OSSAccessKeyId フォームフィールドは必須です。
Post request signature is empty
-
原因:PostObject リクエストヘッダーに署名情報がありません。
-
解決策:バケットが公開読み書きでない場合、または OSSAccessKeyId (または Policy) フォームフィールドが提供されている場合、Signature フォームフィールドは必須です。署名を計算するには、以下の手順に従います:
-
UTF-8 エンコーディングでポリシーを作成します。
-
ポリシーを Base64 エンコードします。結果は Policy フォームフィールドの値になります。この値を署名対象の文字列として使用します。
-
AccessKey Secret を使用して文字列に署名します。署名メソッドは
Signature = base64(hmac-sha1(base64(policy), AccessKeySecret))です。
-
Private address is forbidden to callback
-
原因:OSS はプライベート IP アドレスにコールバックリクエストを送信できません。
-
解決策:パブリック IP アドレスを使用してコールバックリクエストを送信します。
The bucket POST contains unrecognized field name
-
原因:
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--
The bucket POST must contain the specified 'key'. If it is specified, please check the order of the fields
-
原因:PostObject リクエストで key フォームフィールドが指定されていないか、key フォームフィールドの順序が正しくありません。
-
解決策:PostObject リクエストで key フォームフィールドを指定します。key フォームフィールドは file フォームフィールドの前に置く必要があります。PostObject。
The bucket POST must contain the specified field name
-
原因:POST リクエストフォームに無効なパラメーターまたは不正な形式のパラメーターが含まれています。
-
解決策:標準形式でパラメーターを指定します。PostObject。
The callback body is empty
-
原因:callbackBody パラメーターが指定されていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列である必要があります。コールバック用のサーバー URL (callbackUrl) とコールバックのコンテンツ (callbackBody) を指定する必要があります。
The callback body is invalid
-
原因:callbackBody パラメーターが無効で、JSON として解析できません。
-
解決策:callbackBody パラメーターは、コールバックが開始されたときのリクエストボディの値を指定します。例:
key=$(object)&etag=$(etag)&my_var=$(x:my_var)。コールバック。
The callback body type configuration is invalid. or The body type of callback is not supported
-
原因:callbackBodyType パラメーターが無効で、JSON として解析できません。
-
解決策:callbackBodyType パラメーターは、コールバックリクエストの Content-Type を指定します。サポートされている値は
application/x-www-form-urlencodedとapplication/jsonです。
The callback configuration is not base64 encoded
-
原因:Callback パラメーターが Base64 エンコードされていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列である必要があります。コールバック用のサーバー URL とコールバックのコンテンツを指定する必要があります。コールバック。
The callback configuration is not json format
-
原因: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" }
The callback host configuration is invalid
-
原因:callbackHost パラメーターが無効で、JSON として解析できません。
-
解決策:callbackHost パラメーターは、コールバックリクエストの Host ヘッダーを指定します。例:
oss-cn-hangzhou.aliyuncs.com。callbackHost が設定されていない場合、callbackUrl の URL が解析され、URL から解析された Host が callbackHost の値として使用されます。
The callback signature version is invalid
-
原因:署名バージョンがサポートされていません。
-
解決策:現在の署名がバージョン 1.0 または 2.0 であることを確認します。
The callback url configuration is invalid
-
原因:Callback パラメーターにコールバック用のサーバー URL (callbackUrl) が指定されていません。
-
解決策:Callback パラメーターは Base64 エンコードされた JSON 文字列である必要があります。コールバック用のサーバー URL とコールバックのコンテンツを指定する必要があります。
The callback var is not expecten json
-
原因:callback-var パラメーターが JSON 形式ではありません。
-
解決策:callback-var パラメーターはカスタムパラメーターを設定するために使用されます。カスタムパラメーターはキーと値のペアとして指定されます。キーは
x:で始まり、小文字である必要があります。たとえば、x:var1とx:var2の 2 つのキーを、対応する値 value1 と value2 で設定する場合、JSON 形式は次のようになります:{ "x:var1":"value1", "x:var2":"value2" }
The format of persistent header is invalid, should be \"name:Base64Encode(value),name:Base64Encode(value)...\". or The header value specified by persistent header is not base64 encoded
-
原因:カスタムヘッダーの形式が正しくありません。
-
解決策:カスタムヘッダーの形式は
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=となります。
The header 'x-oss-tagging' shall be encoded as UTF-8 then URLEncoded URL query parameters without tag name duplicates
-
原因:タグのキーと値が URL エンコードされておらず、キーが重複しています。
-
解決策:オブジェクトのタグ付けでは、キーと値のペアのセットを使用してオブジェクトをマークします。オブジェクトタグには以下のルールが適用されます:
-
1 つのオブジェクトには最大 10 個のタグを付けることができます。キーは一意である必要があります。
-
各キーの長さは最大 128 文字、各値の長さは最大 256 文字です。
-
キーと値は大文字と小文字を区別します。
-
タグの有効な文字セットには、大文字、小文字、数字、スペース、および次の特殊文字が含まれます:+ - = . _ : / HTTP ヘッダーを使用してタグを設定し、タグにこれらの文字のいずれかが含まれている場合は、タグのキーと値を URL エンコードする必要があります。
-
The header specified by persistent header is not valid HTTP token
-
原因:カスタムヘッダーに無効な文字が含まれています。
-
解決策:OSS は RFC 7230 仕様に準拠しており、この仕様に基づいて HTTP ヘッダーに無効な文字が含まれているかどうかを判断します。
The header specified by persistent header is reserved
-
原因:カスタムヘッダーが標準の HTTP ヘッダーと競合しています。
-
解決策:カスタムヘッダーに
Host、Content-MD5、Origin、Rangeなどの標準 HTTP ヘッダーを指定しないでください。
The header value specified by persistent header contains CR or LF
-
原因:カスタムヘッダーの値にキャリッジリターン
\rまたはラインフィード\nが含まれています。 -
解決策:カスタムヘッダーの値からキャリッジリターン
\rとラインフィード\nを削除します。
The header value specified by persistent header is not equal to request header value
-
原因:カスタムヘッダーがリクエストヘッダーと同じ名前を持っていますが、値が異なります。
-
解決策:カスタムヘッダーがリクエストヘッダーと同じ名前を持つ場合、それらの値は同じでなければなりません。
The header value specified by persistent header is not utf-8 encoded
-
原因:カスタムヘッダーの値が無効です。
-
解決策:カスタムヘッダーの値に含まれる中国語文字などの特殊文字を UTF-8 エンコードします。
The length of callback exceed max value
-
原因:Base64 エンコードされた callback パラメーターの合計長が 5 KB を超えています。
-
解決策:Base64 エンコードされた callback パラメーターの合計長は 5 KB を超えることはできません。
The length of callback var exceed max value
-
原因:Base64 エンコードされた callback-var パラメーターの合計長が 5 KB を超えています。
-
解決策:Base64 エンコードされた callback-var パラメーターの合計長は 5 KB を超えることはできません。
The number of callback url exceed max value
-
原因:リクエストされたコールバック URL の数が 5 を超えています。
-
解決策:OSS では、同時に最大 5 つの URL を設定できます。各 URL はセミコロン (;) で区切ります。
The Versioning element must be specified
-
原因:<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>
Unknown parameter in Authorization header
-
原因:Authorization ヘッダーの計算メソッドに不明なパラメーターが存在します。
-
解決策:以下の表のパラメーター説明に基づいて Authorization ヘッダーの計算を完了します。
パラメーター
タイプ
必須
例
説明
AccessKeyId
String
はい
LTAI****************
キーの AccessKey ID。
AccessKeySecret
String
はい
yourAccessKeySecret
キーの AccessKey Secret。
VERB
Enumeration
はい
PUT
HTTP リクエストメソッド。PUT、GET、POST、HEAD、DELETE、OPTIONS など。
\n
String
いいえ
\n
改行。
Content-MD5
String
いいえ
eB5eJF1ptWaXm4bijSPyxw==
リクエストコンテンツデータの MD5 ハッシュ。この値を取得するには、メッセージコンテンツ (ヘッダーを除く) の MD5 ハッシュを計算して 128 ビットの数値を取得し、その数値を Base64 エンコードします。RFC2616 Content-MD5。
このリクエストヘッダーは、メッセージの整合性 (メッセージコンテンツが送信時と同じであるかどうか) を確認するために使用できます。このヘッダーは空にすることができます。
Content-Type
String
いいえ
application/octet-stream
リクエストコンテンツのタイプ。このヘッダーは空にすることができます。
Date
String
はい
Sun, 22 Nov 2015 08:16:38 GMT
操作の時刻。Date パラメーターは GMT 形式である必要があり、空にすることはできません。
重要リクエストの Date と OSS サーバーの現在時刻との差が 15 分を超える場合、OSS サーバーはリクエストを拒否し、HTTP 403 エラーを返します。
CanonicalizedOSSHeaders
String
いいえ
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
String
はい
/examplebucket/
アクセスしたい OSS リソース。このパラメーターは空にすることはできません。
-
Version id can not be the empty string
-
原因:VersionId フィールドが指定されていません。
-
解決策:VersionId フィールドにオブジェクトのバージョン ID を指定します。ListObjectVersions (GetBucketVersions)。
x-oss-traffic-limit is invalid, should be specified between 819200(100KB/s) and 838860800(100MB/s)
-
原因:単一接続の帯域制限の値が無効です。
-
解決策:単一接続の帯域制限の値は 819,200 から 838,860,800 の範囲である必要があります。これは 100 KB/s から 100 MB/s に相当します。
x-oss-traffic-limit should be specified either in query string or header, not both
-
原因:単一接続の帯域制限パラメーター
x-oss-traffic-limitがリクエスト URL とリクエストヘッダーの両方に含まれています。 -
解決策:単一接続の帯域制限パラメーター
x-oss-traffic-limitは、リクエスト URL またはリクエストヘッダーのいずれかに含めることができますが、両方に含めることはできません。
InvalidBucketName
提供されたバケット名が OSS の命名規則に準拠していない場合に返されます。
The specified bucket is not valid
-
原因:バケット名が命名規則に準拠していません。
-
解決策:バケット名が命名規則に準拠していることを確認してください。バケット名には以下のルールが適用されます:
-
小文字、数字、ハイフン (-) のみを含めることができます。
-
先頭と末尾は小文字または数字である必要があります。
-
長さは 3 から 63 文字である必要があります。
-
InvalidBucketStatus
バケットのステータスが特定の操作の要件を満たしていない場合に返されます。
The src and dest bucket must be versioning enabled when drs tagging rule exist
-
原因:CRR のソースバケットとターゲットバケットのバージョン管理ステータスが一致していません。
-
解決策:CRR の場合、ソースバケットとターゲットバケットの両方でバージョン管理を有効または無効にする必要があります。
InvalidChannelName
LiveChannel 名が命名規則に準拠していない場合に返されます。
ChannelName must not be empty
-
原因:チャンネル名フィールドがありません。
-
解決策:命名規則に従ってチャンネル名を指定します。
-
UTF-8 エンコーディングを使用します。
-
長さは 1 から 64 文字である必要があります。
-
フォワードスラッシュ (/) やバックスラッシュ (\) を含めることはできません。
-
ChannelName must not contain a slash
-
原因:チャンネル名にスラッシュが含まれています。
-
解決策:チャンネル名にフォワードスラッシュ (/) やバックスラッシュ (\) が含まれていないことを確認します。
The characters encoding must be utf-8
-
原因:チャンネル名のエンコーディングが正しくありません。
-
解決策:チャンネル名は UTF-8 エンコードされている必要があります。
The Length of channel name must be less than 64
-
原因:チャンネル名の長さが制限を超えています。
-
解決策:チャンネル名の長さが 1 から 64 文字であることを確認します。
InvalidCRC64
データ転送中に CRC-64 値が一致しない場合に返されます。
The x-oss-hash-crc64ecma you specified does not match what we calculated
-
原因:ローカルで計算された CRC-64 値が、サーバーから返された CRC-64 値と一致しません。
InvalidDataEncryptionAlgorithmError
指定されたデータ暗号化アルゴリズムがサポートされていない場合に返されます。
The KMS Data Encryption request you specified is not valid. Supported value:SM4
-
原因:指定されたオブジェクト暗号化アルゴリズムが無効です。
-
解決策:オブジェクトが KMS を使用して暗号化される場合、SM4 暗号化アルゴリズムのみがサポートされます。サーバー側暗号化。
InvalidDigest
リクエストの Content-MD5 値がサーバーによって計算された結果と一致しない場合に返されます。
The Content-MD5 you specified was invalid
-
原因:アップロードの Content-MD5 リクエストヘッダーが、OSS によって計算されたメッセージ本文の Content-MD5 ハッシュと一致しません。
-
解決策:Content-MD5 ハッシュの計算。
InvalidEncryptionAlgorithmError
指定されたサーバー側暗号化アルゴリズムが無効な場合に返されます。
The encryption algorithm specified is not valid. or The Encryption request you specified is not valid. Supported value: AES256/SM4/KMS
-
原因:
x-oss-server-side-encryptionパラメーターに指定された値が無効です。 -
解決策:
x-oss-server-side-encryptionの有効な値は AES256、KMS、および SM4 です。PutObject。
InvalidEncryptionRequest
クライアント側の暗号化リクエストに必要なパラメーターがない場合、またはパラメーターが正しく設定されていない場合に返されます。
Client encryption doesn't support upload part copy
-
原因:クライアントで暗号化されたソースファイルに対して UploadPartCopy オペレーションを呼び出すことはできません。
-
解決策:UploadPartCopy オペレーションは、クライアントで暗号化されていないソースファイルに対してのみ呼び出して、既存のオブジェクトからデータをコピーしてパートをアップロードすることができます。UploadPartCopy。
Miss some necessary client encryption meta parameters
-
原因:クライアント側の暗号化に必要なパラメーターがありません。
-
解決策:以下の必須パラメーターがすべて指定されていることを確認してください。
パラメーター
説明
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
データキーの暗号化アルゴリズム。
The client encryption meta data_size or part_size is invalid
-
原因:クライアント側の暗号化メタデータに入力された合計ファイルサイズまたはパートサイズが無効です。
-
解決策:クライアント側のマルチパートアップロードを実行する場合、マルチパートアップロードの初期化中に大容量ファイルの合計サイズ (x-oss-meta-client-side-encryption-data-size) とパートサイズ (x-oss-meta-client-side-encryption-part-size) を渡す必要があります。パートサイズは 16 の整数倍である必要があります。クライアント側の暗号化 (Java SDK V1)。
The client encryption meta is inconsistent with init_multipart setted
-
原因:クライアント側の暗号化用に設定されたパート暗号化情報が、マルチパートアップロードの初期化時に設定された暗号化情報と一致しません。
-
解決策:クライアント用に設定されたパート暗号化情報が、マルチパートアップロードの初期化時に設定された暗号化情報と一致していることを確認します。クライアント側の暗号化 (Java SDK V1)。
The client encryption part list is unexpected with init_multipart setted
-
原因:実際にアップロードされたパートの数が、マルチパートアップロードの初期化時に指定されたパートの数と一致しません。
-
解決策:指定されたパートの数が、実際にアップロードされたパートの数と一致していることを確認します。
The last partSize must same with init_multipart setted
-
原因:実際にアップロードされたすべてのパートの合計サイズが、マルチパートアップロードの初期化時に指定された合計パートサイズと一致しません。
-
解決策:最後のパートをアップロードした後、実際にアップロードされたすべてのパートの合計サイズが、マルチパートアップロードの初期化時に指定された合計パートサイズと一致していることを確認します。CompleteMultipartUpload。
The parameters of client encryption are allowed to be set once
-
原因:CopyObject オペレーションがクライアント側の暗号化メタデータを変更するために使用されています。
-
解決策:ファイルがクライアント側の暗号化でアップロードされた後、暗号化メタデータは保護され、CopyObject オペレーションを使用してオブジェクトのメタデータを変更することはできません。CopyObject。
The partId must less or equal to expectedPartNumber
-
原因:パート ID がパートの総数 (PartNumber) より大きいです。
-
解決策:パート ID がパートの総数以下であることを確認します。UploadPart。
The parts count calculated by client encryption meta is too large
-
原因:クライアント側の暗号化メタデータに入力されたパートの数が制限を超えています。
-
解決策:各オブジェクトは最大 10,000 パートに分割できます。
The partSize must same with init_multipart setted except last part
-
原因:実際にアップロードされた各パートのサイズが、マルチパートアップロードの初期化時に指定された各パートのサイズと一致しません。
-
解決策:最後のパートを除き、他のすべてのパートのサイズは、マルチパートアップロードの初期化時に指定された各パートのサイズと一致している必要があります。UploadPart。
InvalidHostPutBucket
バケットを作成するために不正なドメイン名を使用した場合に返されます。
Your host is invalid. Please put bucket use Open Storage Service standard host
-
原因:Host パラメーターが正しくありません。
-
解決策:標準のエンドポイントを使用します。エンドポイントとデータセンター。
InvalidObjectName
提供されたオブジェクト名が OSS の命名規則に準拠していない場合に返されます。
The Length of Object name must be less than 1024
-
原因:オブジェクト名の長さが制限を超えています。
-
解決策:オブジェクト名の長さが 1 から 1,023 文字であることを確認します。
The Object name can not be empty
-
原因:オブジェクト名が指定されていません。
-
解決策:オブジェクトの命名規則に従ってオブジェクト名を指定します。
The specified object is not valid
-
原因:指定されたオブジェクト名が無効です。
-
解決策:オブジェクト名が命名規則に準拠していることを確認してください。オブジェクト名には以下のルールが適用されます:
-
UTF-8 エンコーディングを使用します。
-
長さは 1 から 1,023 文字である必要があります。
-
フォワードスラッシュ (/) やバックスラッシュ (\) で始まることはできません。
-
InvalidParameter
リクエストで提供されたパラメーター値が無効であるか、要件を満たしていない場合に返されます。
The specified parameter KMS keyId is not valid
-
原因:指定された CMK ID が無効です。
-
解決策:オブジェクトが KMS を使用して暗号化され、指定されたキーが使用される場合、CMK ID を入力する必要があります。CMK ID の例:
9468da86-3509-4f8d-a61e-6eab1eac****。
InvalidPart
マルチパートアップロード中にパート情報が無効な場合に返されます。
One or more of the specified parts could not be found or the specified entity
-
原因:CompleteMultipartUpload によって送信されたパートが、不正な PartNumber または ETag のために無効です。
-
解決策:サーバーは CompleteMultipartUpload オペレーションが呼び出されたときに PartNumber と ETag を検証します。
-
PartNumber は 1 から 10,000 までの整数でなければなりません。PartNumber は連続している必要はありませんが、昇順である必要があります。たとえば、最初のパートの PartNumber は 1、2 番目のパートの PartNumber は 5 にすることができます。
-
CompleteMultipartUpload リクエストによって作成されたオブジェクトの場合、ETag 値はそのコンテンツの UUID です。ETag 値は、オブジェクトのコンテンツが変更されたかどうかを確認するために使用できます。
-
InvalidPartOrder
マルチパートアップロードのパート番号またはその順序が要件を満たしていない場合に返されます。
Part number must be an integer between 1 and 10000, inclusive
-
原因:PartNumber が無効です。
-
解決策:PartNumber が 1 から 10,000 までの整数であることを確認します。CompleteMultipartUpload。
The list of parts was not in ascending order
-
原因:CompleteMultipartUpload によって送信されたパートが、パート番号の昇順でソートされていません。
-
解決策:CompleteMultipartUpload によって送信されるパートは、パート番号の昇順でソートされている必要があります。たとえば、最初のパートの PartNumber は 1、2 番目のパートの PartNumber は 5 にすることができます。CompleteMultipartUpload。
InvalidPolicyDocument
リクエストの Policy ドキュメントの形式が正しくないか、内容が無効な場合に返されます。
Invalid Policy: Invalid JSON: , or ] expected
-
原因:リクエストの Policy の形式が正しくありません。
-
解決策:Policy に
,または]が欠けていないか確認します。
Invalid Policy: Invalid JSON: unknown char e
-
原因:リクエストの Policy の形式が正しくありません。
-
解決策:Policy の形式を確認します。
"が欠けていないか、またはエスケープ文字に\が欠けていないか確認します。
Invalid Policy: Invalid Simple-Condition: Simple-Conditions must have exactly one property specified
-
原因:リクエスト Policy に
conditionsが含まれていません。 -
解決策:リクエスト Policy には、少なくとも 1 つの
conditions要素が含まれている必要があります。
InvalidRequest
このエラーは、リクエストパラメーターが正しく設定されていないか、指定されたシナリオで無効であることを示します。
Master playlist has ts file
-
原因:マスタープレイリストに M3U8 ファイルと TS ファイルの両方が含まれています。
-
解決策:マスタープレイリストには M3U8 ファイルのみを含める必要があります。これは TS ビデオファイルに関する情報を記録するために使用されます。OSS に基づいて HLS ストリームを構築する。
No ts found in the playlist
-
原因:.ts ファイルが見つかりませんでした。
-
解決策:アップストリーミングを使用してオーディオまたはビデオファイルをアップロードできます。PutLiveChannel。
Playlist name must ends with \".m3u8\"
-
原因:ファイル名が
.m3u8で終わっていません。 -
解決策:HLS ダンプタイプの場合、ファイル名は
.m3u8で終わり、長さは 6 から 128 文字である必要があります。例:playlist.m3u8。
Request specific response headers cannot be used for anonymous GET requests
-
原因:リクエストに必要なパラメーターがありません。
-
解決策:API オペレーションに必要なすべてのパラメーターが指定されているか確認します。API 概要。
Security-token must be provided by query string parameter
-
原因: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 に署名を含める。
Size of playlist is too big
-
原因:プレイリストファイルのサイズが最大制限を超えています。
-
解決策:プレイリストファイルのサイズが 1 MB を超えないことを確認します。
InvalidTag
このエラーは、バケットタグのキーまたは値が命名規則に準拠していない場合に発生します。
The TagKey you have provided is invalid. or The TagValue you have provided is invalid
-
原因:バケットタグのキーまたは値が無効です。
-
解決策:バケットタグが以下の命名規則に準拠していることを確認してください:
-
キーと値は UTF-8 エンコードされている必要があります。
-
キーは最大 64 文字で、
http://、https://、またはAliyunで始まることはできず、空にすることはできません。 -
値は最大 128 文字で、空にすることができます。
-
InvalidTaggingKey
オブジェクトタグのキーが命名規則に準拠していない場合に返されます。
The tagging key you provided is invalid
-
原因:オブジェクトタグのキーが無効です。
-
解決策:オブジェクトのタグ付けでは、キーと値のペアのセットを使用してオブジェクトをマークします。オブジェクトタグには以下のルールが適用されます:
-
キーは最大 128 文字、値は最大 256 文字です。
-
キーと値は大文字と小文字を区別します。
-
タグの有効な文字セットには、大文字、小文字、数字、スペース、および次の特殊文字が含まれます:+、-、=、.、_、:、/。HTTP ヘッダーを使用してこれらの特殊文字を含むタグを設定する場合は、タグのキーと値を URL エンコードする必要があります。
-
InvalidTargetBucket
このエラーは、クロスリージョンレプリケーション (CRR) のターゲットバケットが無効な場合に発生します。
The target bucket is invalid for bucket replication
-
原因:指定されたターゲットバケットはレプリケーションには無効です。
-
解決策:GetBucketReplicationLocation オペレーションを呼び出して、レプリケーションに有効なターゲットリージョンを取得します。
InvalidTargetBucketForLogging
このエラーは、ログを保存するターゲットバケットが存在しないか、アクセスするのに必要な権限がない場合に発生します。
Put bucket log requester is not target bucket owner
-
原因:ログを保存するターゲットバケットが存在しません。
-
解決策:有効なターゲットバケットを指定します。
InvalidTargetLocation
このエラーは、指定されたバケットがターゲットリージョンに存在しない場合に発生します。
The target bucket you specified does not locate in the target location
-
原因:バケットがターゲットリージョンに存在しません。
-
解決策:バケットが配置されているリージョンを確認します。
InvalidTargetType
シンボリックリンクが無効なタイプのターゲットオブジェクトを指している場合に返されます。
The symbolic's target file type is invalid
-
原因:シンボリックリンクが別のシンボリックリンクを指しています。
-
解決策:シンボリックリンクのターゲットが別のシンボリックリンクでないことを確認します。
InvalidWORMConfiguration
このエラーは、保持ポリシーの設定が無効であることを示します。
Invalid WORM Configuration
-
原因:保持ポリシーが無効です。
-
解決策:以下のコードは、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 形式でない場合に返されます。
The XML you provided was not well-formed
-
原因:リクエストパラメーターが有効な XML 形式ではありません。
-
解決策:リクエストパラメーターが有効な XML 形式であることを確認します。
InventoryExceedLimit
このエラーは、バケットに設定されたインベントリルールの数がシステム制限を超えた場合に発生します。
You are not allowed to create more inventory than limit
-
原因:単一バケットのインベントリルールの数が最大制限の 1,000 に達しました。
-
解決策:インベントリルールの数の制限を増やすには、チケットを送信してください。
KmsServiceNotEnabled
このエラーは、KMS 暗号化を使用しているが KMS サービスが有効化されていない場合に発生します。
This user does not turn on KMS service
-
原因:KMS サービスを有効化する前に、サーバー側暗号化に KMS を使用しようとしました。
-
解決策:KMS サービスを有効化します。Key Management Service の有効化。
MalformedPOSTRequest
PostObject リクエストのフォームフィールドが正しくフォーマットされていない場合に返されます。
The body of your POST request is not well-formed 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 形式が無効であるか、公開されたスキーマに準拠していない場合に返されます。
The XML you provided was not well-formed or did not validate against our published schema
-
原因:リクエストの XML 形式が無効です。
-
解決策:このエラーをトラブルシューティングするには、関連するリクエストのドキュメントを参照してください:
MaxPOSTPreDataLengthExceededError
PostObject リクエストでアップロードされたファイルの前に来るフォームフィールドデータが大きすぎる場合に返されます。
Your POST request fields preceding the upload file were too large
-
原因:アップロードされたファイルが大きすぎます。Post メソッドを使用してアップロードされるファイルの最大サイズは 5 GB です。
MissingAccessKeyId
このエラーは、リクエストに AccessKey ID がないことを示します。
MissingAccessKeyId AccessKeyId is mandatory for this action
-
原因:AccessKey ID がありません。
-
解決策:正しい AccessKey ID を指定します。
MissingArgument
このエラーは、API 呼び出しに必要なパラメーターがないことを示します。
Missing Some Required Arguments
-
原因:API 呼び出しに必要なパラメーターがありません。
-
解決策:API 概要の API ドキュメントを参照し、必要なすべてのパラメーターを追加してください。
NoReplicationLocation
このエラーは、ソースバケットのリージョンにクロスリージョンレプリケーション (CRR) のペアとなるターゲットリージョンがない場合に発生します。
The bucket does not have corresponding replication location
-
原因:ソースバケットのデータセンターに CRR のペアとなるデータセンターがありません。
-
解決策:レプリケーションに利用可能なターゲットリージョンのリストを取得するには、「GetBucketReplicationLocation」をご参照ください。
NoReplicationRule
このエラーは、リクエストされたバケットにクロスリージョンレプリケーション (CRR) ルールが設定されていない場合に発生します。
No replication rule specified
-
原因:リクエストされたバケットに CRR ルールが設定されていません。
-
解決策:バケットに CRR ルールを設定します。PutBucketReplication。
NotImplemented
リクエストにまだ実装されていない機能やサポートされていない操作が含まれている場合に返されます。
A header you provided implies functionality that is not implemented
-
原因:API リクエストで不正またはサポートされていないパラメーターが渡されました。
-
解決策:API 概要で対応する API ドキュメントを参照し、正しくサポートされているパラメーター形式を使用してください。
NotSymlink
シンボリックリンクに固有の操作が、シンボリックリンクではないオブジェクトに対して実行された場合に返されます。
The object is not symlink
-
原因:ターゲットオブジェクトはシンボリックリンクではありません。
-
解決策:PutSymlink または GetSymlink 操作がシンボリックリンクに対してのみ実行されることを確認します。
OperationNotSupported
リクエストされた操作が現在のリソースタイプまたはステータスに適用できない場合に返されます。
The operation is not supported for this resource
-
原因:リクエストされた操作は指定されたリソースではサポートされていません。考えられるシナリオは次のとおりです:
-
追加可能オブジェクトまたはシンボリックリンクをコールドアーカイブまたはディープコールドアーカイブストレージクラスに変換しようとしています。
-
RestoreObject 操作を使用して、アーカイブストレージ、コールドアーカイブ、またはディープコールドアーカイブストレージクラスにないオブジェクトを復元しようとしています。
-
-
解決策:
-
PutObject 操作を呼び出して同じ名前のオブジェクトをアップロードし、追加可能オブジェクトを通常オブジェクトで上書きできます。その後、オブジェクトをコールドアーカイブまたはディープコールドアーカイブストレージクラスに変換できます。
-
RestoreObject 操作を使用してファイルを復元する場合、ファイルがアーカイブストレージ、コールドアーカイブ、またはディープコールドアーカイブストレージクラスにあることを確認してください。
-
RepeatedTags
このエラーは、タグ設定に重複したキーが存在することを示します。
Tag keys must be unique
-
原因:指定されたタグキーがすでに存在します。
-
解決策:GetBucketTags を呼び出してバケットの既存のタグを取得し、その後 PutBucketTags を呼び出して新しいタグを設定します。
RequestIsNotMultiPartContent
PostObject リクエストの Content-Type が multipart/form-data でない場合に返されます。
Bucket POST must be of the enclosure-type multipart/form-data
-
原因:PostObject オペレーションによって送信されたフォームが
multipart/form-dataとしてエンコードされていません。 -
解決策:PostObject オペレーションによって送信されるフォームは
multipart/form-dataとしてエンコードされている必要があります。これには、ヘッダーのContent-Typeがmultipart/form-data;boundary=xxxxxxの形式である必要があります。ここでboundaryは境界文字列です。PostObject。
RequestTimeout
このエラーは、ネットワークタイムアウトのためにリクエストが指定時間内に完了しなかった場合に発生します。
Your socket connection to the server was not read from or written to within the timeout period. Idle connections will be closed
-
原因:ネットワーク環境またはネットワーク設定のためにネットワークタイムアウトが発生しました。
-
解決策:ネットワークタイムアウトの処理。
TooManyBuckets
Alibaba Cloud アカウントによって単一リージョンで作成されたバケットの数が指定された制限を超えた場合に返されます。
You have attempted to create more buckets than allowed
TooManyCname
このエラーは、バケットにアタッチされたカスタムドメイン名の数が制限を超えた場合に発生します。
You have attempted to create more cname than allowed
-
原因:バケットにアタッチできるドメイン名の数が最大 100 に達しました。
-
解決策:バケットのドメイン名の数の制限を増やすためにチケットを送信できます。
TooManyFilterObjectTags
クロスリージョンレプリケーション (CRR) ルールで設定されたオブジェクトタグの数が制限を超えた場合に返されます。
The bucket replication rule's filter object tags number is beyond limit
-
原因:CRR ルールで設定されたオブジェクトタグの数が制限を超えています。
-
解決策:CRR ルールに最大 10 個のオブジェクトタグを追加して、同期対象のオブジェクトをフィルタリングできます。
TooManyIncomingReplication
バケットをターゲットとして使用するクロスリージョンレプリケーション (CRR) ルールの数が制限を超えた場合に返されます。
You have attempted to create more incoming replication for bucket than allowed
-
原因:バケットに関連付けられた CRR ルールの数が 100 に達しました。
-
解決策:単一のバケットは最大 100 個の CRR ルールをサポートします。ビジネス要件がこの制限を超える場合は、チケットを送信できます。
TooManyOutgoingReplication
このエラーは、ソースバケットの送信クロスリージョンレプリケーション (CRR) ルールの数が制限を超えていることを示します。
You have attempted to create more outgoing replication for bucket than allowed
-
原因:バケットに関連付けられた CRR ルールの数が 100 の制限に達しました。
-
解決策:単一のバケットは最大 100 個の CRR ルールをサポートします。ビジネス要件がこの制限を超える場合は、チケットを送信してください。
TooManyPipes
このエラーは、画像処理操作のパイプライン演算子の数が制限を超えた場合に発生します。
Maximal number of pipes supported is
-
原因:リクエストに画像操作が多すぎます。
-
解決策:リクエスト内の画像操作の数を減らします。
TooManyPrefixes
クロスリージョンレプリケーション (CRR) ルールのプレフィックス数が制限を超えた場合に返されます。
The bucket replication rule's prefixes number is beyond limit
-
原因:CRR ルールで 10 を超えるプレフィックスが指定されています。
-
解決策:クロスリージョンレプリケーションでは、最大 10 個のプレフィックスを指定して、一致するオブジェクトのみをターゲットバケットに同期できます。
TooManyReplicationRules
このエラーは、バケットに設定されたクロスリージョンレプリケーション (CRR) ルールの数が制限を超えた場合に発生します。
OSS only support one replication rule now
-
原因:単一のバケットに複数のレプリケーションルールを設定しました。
-
解決策:バケットには 1 つのレプリケーションルールしか設定できません。
TooManyTags
バケットのタグ数がシステム制限を超えた場合に返されます。
The bucket tags num is beyond limit
-
原因:バケットのタグ数が制限を超えています。
-
解決策:1 つのバケットには最大 20 個のタグを付けることができます。PutBucketTags。
UserKeyMustBeSpecified
削除操作でオブジェクト名が指定されていない場合に返されます。
User key must be specified
-
原因:削除操作でオブジェクト名が指定されていませんでした。
-
解決策:削除するオブジェクトの名前を指定します。DeleteMultipleObjects。
WeeklyInventoryExceedLimit
このエラーは、バケット内のオブジェクト数が週次マニフェストファイルのエクスポート制限を超えた場合に発生します。
weekly inventory object count exceed limit
-
原因:バケット内のオブジェクト数が週次マニフェストファイルのエクスポート制限を超えています。
-
解決策:週次マニフェストファイルのエクスポートでは、バケット内のオブジェクト数は 500 億未満である必要があります。
バケットに 500 億以上のファイルが含まれている場合:
-
プレフィックスを照合してオブジェクトをバッチでエクスポートします。
-
オブジェクトエクスポート上限の引き上げをリクエストするには、チケットを起票します。
-