COSにオブジェクトをアップロードする方法は?
COSでは、以下の方法でオブジェクトをアップロードできます:
3. APIまたはSDKのPUT Objectインターフェースを通じてアップロードすることも可能です。対応しているSDK言語については、SDK概要をご参照ください。 COSにファイルをアップロードした後、アクセスできない場合は、どうすればよいですか?
COSにファイルをアップロードした後、アクセスできない場合は、以下の手順に従って原因をご確認ください:
手順1:COS診断ツールで確認する
手順2:アクセス権限の設定を確認する
ファイルをアップロードする際にパブリック読み取り・プライベート書き込みのアクセス権限を明示的に設定しない場合、ファイルはデフォルトでバケットのアクセス権限を継承します。例えば、バケットの権限がプライベート読み書きに設定されている場合、ファイルの権限も同様にプライベート読み書きになります。ファイル詳細画面のファイル詳細でオブジェクトの権限を確認できます。 パブリック読み書き・書き込みのファイルにアクセスするには、有効な署名が必要です。署名なしで直接オブジェクトのURLにアクセスすると、AccessDeniedエラーが発生します。 署名なしのオブジェクトURLの形式は以下のとおりです:https://<BucketName-APPID>.cos.<Region>.myqcloud.com/<ObjectKey>。
署名付きのオブジェクトURLの形式は以下のとおりです: https://<BucketName-APPID>.cos.<Region>.myqcloud.com/<ObjectKey>?q-sign-algorithm=sha1&q-ak=AKXXX&q-sign-time=1704855332;1704858932&q-key-time=1704855332;1704858932&q-header-list=host&q-url-param-list=&q-signature=XXX&x-cos-security-token=XXX。
「パブリック読み取り・プライベート書き込み」に設定されたファイルは、署名なしで直接URLからアクセス可能です。この場合、ユーザー認証なしに誰でもオブジェクトの URLから直接ダウンロード可能です。ただし、リソースをパブリック読み取りに公開することにはセキュリティ上のリスクが伴います。URLが漏洩した場合、不特定多数によるアクセスや悪意あるユーザーによる帯域の不正使用が発生するおそれがあります。詳細については、COS認証と認証プロセスをご参照ください。 手順3:ドメイン設定を確認する
独自ドメインでCOSにアクセスする場合、ドメイン名解決に関する問題が発生する可能性があります。ドメイン名解決が正しいことを確認してください。エラーメッセージがUserCnameInvalidを表示した場合は、DNS解決が正しく行われているか、または反映済みか(通常は48時間以内に有効になります)をご確認ください。COSで静的ウェブサイトをホスティングする場合は 、COS設定時に静的ウェブサイトオリジンを選択してください。詳細手順についてはカスタムオリジンドメイン名の有効化をご参照ください。 手順4:ホットリンク保護の設定を確認する
エラーYou are denied by bucket referer ruleが表示された場合、アクセス時に送信されたrefererパラメータが、ホットリンク保護の設定と一致していないことを意味します。ホットリンク保護を無効化にするか、リクエストに正しいrefererパラメータを含めることで対応できます。操作手順はホットリンク防止の設定をご参照ください。 手順5:サードパーティストレージコンポーネントのCOS設定を確認する
PicGoなどのサードパーティのストレージコンポーネントとCOSを連携させている場合、COSの設定に誤りがないかご確認ください。詳細はサードパーティアプリでCOSを使用するをご参照ください。 手順6:その他の項目を確認する
アカウントが料金滞納の状態になっていると、画像ファイルなどを開くことができなくなる場合があります。
ファイルのアップロードが完全に完了していない場合、正常にアクセスできないことがあります。COSにファイルが完全にアップロードされていることをご確認ください。
COSからオブジェクトをダウンロードする方法は?
COSのアップロードおよびダウンロード帯域幅に制限はありますか?
中国大陸のパブリッククラウドリージョンでは、単一アカウントあたり単一リージョン内のデフォルト上りおよび下り帯域幅は、それぞれ最大15Gbit/sです。
その他のリージョンでは、単一アカウントあたり単一リージョン内のデフォルト上りおよび下り帯域幅は、それぞれ最大10Gbit/sです。帯域幅がこの制限に達すると、リクエストはスロットリングされる可能性があります。より高い帯域幅が必要な場合は、アフターサービスエンジニアまでご連絡ください。 ファイルのダウンロードではなく、ブラウザで直接プレビューするにはどうすればよいですか?
手順1:カスタムドメインを設定する
2024年1月1日以降に作成されたバケットについては、デフォルトのドメイン(バケットデフォルトドメイン、静的ウェブサイトドメイン、グローバルアクセラレーションドメインを含む)経由でファイルにアクセスする場合、すべてのファイル形式はプレビューに対応せず、自動的にダウンロードされます。詳細は COSバケットドメインの使用安全管理通知をご確認ください。ブラウザで直接ファイルをプレビューする、またはバケット内のapkやipaタイプのオブジェクトをダウンロードするには、カスタムドメイン経由でオブジェクトにアクセスしてください。
手順2:正しいContent-TypeとContent-Dispositionヘッダーを設定する
COSのファイルへリクエストを行う際は、Content-Typeヘッダーが正しく設定されていることを確認し、かつContent-Dispositionヘッダーのパラメータがinline(ブラウザでコンテンツの表示を試みる)に設定されていることを確認してください。ブラウザが対象ファイル形式の表示に対応している場合は、ブラウザはファイルを直接ダウンロードせずに表示されます。ヘッダーパラメータの設定手順については、カスタムHeadersをご参照ください。 ファイルをプレビューせず、直接ブラウザでダウンロードするにはどうすればよいですか。
オブジェクトストレージコンソール から、オブジェクトのカスタムHeadersにてContent-Dispositionパラメータをattachment(ブラウザがユーザーにコンテンツのダウンロードを促す)として設定することが可能です。操作ガイドについてはカスタムHeadersをご参照ください。 GET Objectインターフェースでリクエストパラメータresponse-content-dispositionの値をattachmentに設定する方法でも、ブラウザでファイルダウンロードのポップアップを表示させることが可能です。参考ドキュメントについてはGET Objectをご参照ください。 注意:
リクエストにresponse-*パラメータを使用する必要がある場合、リクエストには署名が必要です。
プライベートネットワークでCOSにアクセスしているかどうかはどのように判断しますか。
Tencent Cloud COSのアクセスドメイン名にはインテリジェントDNS解決を使用しており、インターネットの様々なキャリア環境の下で、お客様のCOSアクセスにとって最適なリンクを検知および指定します。
Tencent Cloud内にデプロイしたCVMサービスをCOSへのプライベートネットワークアクセスに使用している場合は、まずCVMとCOSバケットが同じリージョンに所属していることを確認し、その後CVM上でnslookupコマンドを使用してCOSドメイン名を解決します。プライベートIPが返された場合、CVMとCOS間はプライベートネットワークアクセスであり、そうでない場合はパブリックネットワークアクセスであることがわかります。
注意:
CVMからCOSサービスへアクセスする場合は、Tencent Cloud標準のプライベートDNSアドレスを使用してプライベートネットワーク経由でアクセスしてください。CVMのDNS設定を変更すると、プライベートDNSの解決が失敗し、COSへ接続できない可能性があります。
Tencent Cloud内でデプロイされたCVMインスタンスが、COSバケットと異なるリージョンに配置されている場合でも、当該リージョンがCOSのサポート対象であれば、COSのプライベートネットワークグローバルアクセラレーションドメインを利用することで、CVMからCOSへのクロスリージョン内部通信を実現できます。プライベートネットワークグローバルアクセラレーションドメインを利用したクロスリージョン内部通信には追加料金が発生します。詳細は内網グローバルアクセラレーションをご参照ください。 プライベートネットワークアクセスの判断方法
同一リージョン内でのTencent Cloud製品へのアクセスは、プライベートネットワーク接続によって行うことができ、それによるプライベートネットワークトラフィックには料金が発生しません。このため、Tencent Cloudの製品をお選びになる際は、できるだけ同一のリージョンを選択すると料金の節約になります。
注意:
パブリッククラウドリージョンと金融クラウドリージョン間のプライベートネットワークは相互運用されていません。
プライベートネットワークアクセスかどうかを確認するには、次の方法をご参照ください。
Tencent Cloud Virtual Machine(CVM)のCloud Object Storage(COS)アクセスを例にとると、プライベートネットワークを使用したCOSアクセスかどうかを判定するには、CVM上でnslookupコマンドを使用してCOSドメイン名を解決します。プライベートネットワークIPが返された場合、CVMとCOS間はプライベートネットワークアクセスであり、そうでない場合はパブリックネットワークアクセスであることがわかります。
説明:
プライベートIPアドレスは通常、 10.*.*.*、100.*.*.* の形式であり、VPCネットワークでは 169.254.*.* などの形式となります。これらはいずれもプライベートネットワークに属するIPです。
examplebucket-1250000000.cos.ap-guangzhou.myqcloud.comを対象バケットのアドレスと仮定し、nslookupコマンドを実行すると、以下の情報が表示されます:
nslookup examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com
Server: 10.138.224.65
Address: 10.138.224.65
Name: examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com
Address: 10.148.214.13
Name: examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com
Address: 10.148.214.14
そのうち、10.148.214.13および10.148.214.14は、COSに対してプライベートネットワーク経由でアクセスされていることを表しています。
注意:
Tencent CloudのBMインスタンスのプライベートIPアドレスとCVMのIPアドレスには違いがあり、一般的な形式は9.*.*.*または10.*.*.*です。ご不明な点がありましたらお問い合わせください。 フォルダをダウンロードするにはどうすればよいですか。
COSBrowserツールにログインし、ダウンロードしたいフォルダを選び、ダウンロードをクリックすると、フォルダまたはファイル一括でのダウンロードを行うことができます。あるいはCOSCMD, COSCLIツールによってフォルダのダウンロードを実現できます。詳細については、COSCMDツール 、COSCLIツール をご参照ください。 アップロード、ダウンロードなどの操作を行う際、「403 Forbidden」、権限拒否などのエラーが発生した場合はどのように対処すればよいですか。
COSでファイルの一括アップロードまたは一括ダウンロードを行うにはどうすればよいですか。
COSではコンソール、API/SDK、ツールなどの複数の方式でファイルの一括アップロードまたは一括ダウンロードを行うことができます。
API/SDK方式:COSではプログラミングによってAPIまたはSDKインターフェースを複数回呼び出す方式でファイルのバッチ操作を行うことができます。詳細については、オブジェクトのアップロード/ダウンロード APIインターフェースおよびSDKの概要をご参照ください。 ファイルをバケットにアップロードする際、同名のファイルが存在した場合は直接上書きされますか。それとも別バージョンのファイルが新規作成されますか。
COSではバージョン管理機能をサポートしています。バケットでバージョン管理機能を有効にしていない場合は、同名のファイルをバケットにアップロードすると、既存の同名ファイルに直接上書きされます。バケットでバージョン管理機能を有効にしている場合は、同じ名前のファイルをバケットにアップロードすると、そのオブジェクトの複数のバージョンが同時に存在することになります。
COSのマルチパートアップロード方式では、最小のパートサイズはどれくらいの大きさですか。
1パートは最小で1MBとなります。詳細については、仕様と制限のドキュメントをご参照ください。 大容量ファイルのマルチパートアップロード中に署名が失効した場合、署名を切り替えてパートのアップロードを継続することはできますか。
できます。
COS内のファイルに対してワンタイムURLを生成するにはどうすればよいですか。
署名の有効期限を指定しているのに、署名が期限切れとなってもファイルがダウンロードできるのはなぜですか。
デフォルトでは、ブラウザは正常にロードしたファイルをキャッシュします。そのため、同一のURLを使用している場合、ブラウザはサーバーに再度リクエストは行わず、キャッシュした結果を返します。ユーザーがファイルをアップロードする際は、Cache-Control: no-cacheヘッダーを指定してブラウザキャッシュを防止することをお勧めします。さらに詳しくお知りになりたい場合は、PUT ObjectまたはInitiate Multipart Uploadのドキュメントをご参照ください。また、ファイルをダウンロードする際にresponse-cache-control=no-cacheリクエストパラメータを指定してブラウザキャッシュを防止することもできます。さらに詳しくお知りになりたい場合は、GET Objectのドキュメントをご参照ください。 コンソールでファイルをアップロードすると、「アップロードに失敗しました。ネットワークに問題があります」と表示されましたが、どうすればよいですか。
このエラーはローカルネットワーク環境が不安定な場合に発生します。ネットワーク環境を変更してから再度アップロードを行うことをお勧めします。
第三者によるCOSファイルのダウンロードを防止するにはどうすればよいですか。
バケットをプライベート読み取り/書き込みに設定することができます。詳細については、アクセス権限の設定のドキュメントをご参照ください。また、リンク不正アクセス防止機能によってホワイトリスト制限を設定し、リスト以外のドメイン名によるバケットのデフォルトアクセスアドレスへのアクセスを制限することもできます。詳細については、リンク不正アクセス防止の設定のドキュメントをご参照ください。 ファイルのダウンロードURLを、大文字と小文字を区別しないように設定することは可能ですか。
この操作はCOSではサポートしていません。COSファイル名はアルファベットの大文字と小文字を区別しており、URLからのファイルアクセスも同様にアルファベットの大文字と小文字を区別する必要があります。バケットでCDNアクセラレーション機能を有効にしている場合、CDNコンソールで大文字と小文字を区別しないキャッシュ設定を有効にすることで、ヒット率を一定程度向上させることができます。詳細については、大文字と小文字を区別しないキャッシュ設定をご参照ください。 ファイルのアップロードやバケット作成などの操作を行う際に、「your policy or acl has reached the limit (Status Code: 400; Error Code: PolicyFull)」というエラーが発生しましたが、どのように対処すればよいですか。
COSの各ルートアカウント下のバケットACLルールの数は最大1000個までです。設定したバケットACLが1000個を超えるとこのエラーが発生します。このため、不要なバケットACLルールは削除することをお勧めします。
説明:
オブジェクトレベルのACLまたはPolicyの使用はお勧めしません。APIまたはSDKを呼び出す際、ファイルに対して特別なACL制御を必要としない場合は、ACLの関連パラメータ(x-cos-acl、ACLなど)を空にし、バケットの権限をそのまま引き継いでください。
なぜデフォルトドメインではapk/ipaファイルをダウンロードできないのですか?
サービス全体の安全性と安定性を確保するため、2024年1月1日以降に新規作成されたバケットでは、バケットのデフォルトドメイン(バケットドメイン、静的ウェブサイトドメイン、グローバルアクセラレーションドメインを含む)を使用してapk/ipaファイルをダウンロードすることができません。詳細については、COSバケットドメイン使用安全管理通知(2024年1月施行)ドキュメントをご参照ください。 デフォルトドメインを使用してファイルをプレビューするのはなぜサポートされていないのですか?
全体サービスの安全性と安定性を確保するため、2024年1月1日以降に新規作成されたバケットでは、バケットのデフォルトドメイン(バケットドメイン、静的ウェブサイトドメイン、グローバルアクセラレーションドメインを含む)を使用してブラウザでファイルをプレビューすることがサポートされません。参考資料については、COSバケットドメイン使用に関するセキュリティ管理通知(2024年1月施行)ドキュメントをご参照ください。 txt形式のファイルをオンラインプレビューで文字化けが発生する場合、どのように対処すればよいですか?
以下の方法でトラブルシューティングを行ってください:
1. txt形式ファイルのエンコーディング(例:UTF-8、GBK)が元のファイルと一致していることを確認してください。一致していない場合は、カスタムHeadersドキュメントを参照し、Content-Typeを一致するように設定してください。例えば、txt形式のファイルがUTF-8エンコーディング形式を採用している場合、Content-Typeをtext/plain;charset=utf-8に設定してください。 2. ブラウザの互換性に問題がある可能性がありますので、別のブラウザでファイルのプレビューをお試しください。
3. ファイルの内容が破損していないかをご確認いただくか、別のファイル形式に変換して再アップロードしてください。