ホームページ > バックエンド開発 > PHPチュートリアル > phpmaster |梨を使用してAmazon S3を統合します

phpmaster |梨を使用してAmazon S3を統合します

Jennifer Aniston
リリース: 2025-03-02 08:30:11
オリジナル
393 人が閲覧しました

Amazon S3を使用したファイルホスティング:便利なガイド

キーポイント:

    Amazon S3(AWSのオンラインストレージネットワークサービス)は、そのスケーラビリティと経済学のための推奨ファイルホスティングサービスです。アカウントの登録とアクセス識別子の取得は、このサービスを使用する最初のステップです。
  • services_amazon_s3 pearパッケージは、アプリケーションでS3と対話するために使用されるツールです。インストールプロセスでは、現在の作業ディレクトリにPEARディレクトリを作成し、インストールされているPEARパッケージとその依存関係の実際のPHPコードを含む。
  • services_amazon_s3を使用する方法は2つあります。APIを使用してプログラムで使用するか、ストリームを介してストリームラッパーを使用します。両方の方法の選択は、S3の特定の目的と個人的な好みに依存します。
  • Services_Amazon_S3パッケージは、S3との相互作用を簡素化し、すべての根本的な詳細を処理します。これにより、ユーザーは動作したいデータと実行したいものを指定できます。例とAPIドキュメントを学習した後、このパッケージをS3と統合することができます。
  • 最近、開発中のアプリケーションにホスティングサービスを提供するソリューションを探しています。私は、orchestra.ioを見ることにしました。なぜなら、私はそれが年の特定の時点で大量のトラフィックに洪水が発生することを期待しており、それに応じてスケーリングできるようにアプリケーションを必要とするからです。 orchestra.ioのドキュメントのレビュー中に、ファイルのアップロードを許可しないことがわかりました。代わりに、ファイルホスティングにAmazon S3を使用することをお勧めします。慣れていない場合、S3はAmazon Web Services(AWS)オンラインストレージネットワークサービスの一部です。さまざまなネットワークサービスインターフェイスを介して、かなり安いストレージへのアクセスを提供します。この記事では、PearのServices_Amazon_S3パッケージを使用して、Amazon S3アカウントを登録し、独自のアプリケーションでS3と対話する方法を示します。

登録Amazon s3

このプロセスの最初のステップは、aws.amazon.com/s3に独自のS3アカウントを登録することです。そこで、右側の[今すぐ登録]ボタンを見つけてクリックし、提供されている指示に従ってください。

しばらくして、提供されたアドレスにさらに指示が記載されたメールを受信する必要があります。受け取っていない場合、またはコピーを紛失した場合は、AWS Management Console.aws.amazon.com/s3にアクセスするだけです。 Webサイトのこの領域は、S3にデータを書き込むために必要な資格情報であるアクセス識別子を提供します。アクセストークンを必要とするWebサービスAPIを使用した場合、これらのアクセス識別子は同じことを行います。コンソールページを開いた後、右上隅に名前が付いたメニューを探します。それをクリックして展開し、[セキュリティ資格情報]オプションをクリックします。 phpmaster | Integrating Amazon S3 using PEAR

[セキュリティ資格情報]ページを入力した後、下にスクロールして「アクセス資格情報」セクションを見つけます。ここでは、アクセスキーIDが表示されます。その近くの「表示」リンクをクリックして、シークレットアクセスキーを表示します。これらの2つの情報は、S3アカウントにアクセスするために必要なすべてです。必ずそれらを良好な状態に保ちます。

phpmaster | Integrating Amazon S3 using PEAR

アクセスキーの横にある2つのタブは、S3以外のサービスに固有です。より具体的には、X.509証明書を使用して、AWS SOAP API(S3および機械タークを除く - 代わりにアクセスキーを使用)を使用する場合にセキュリティリクエストを発行し、キーペアはAmazon CloudFrontとEC2に使用されます。アクセス識別子ができたので、コンソールページに戻ります。左側にはバケットリストがあり、最初は空です。バケットは、ファイルのセットを保存する名前の指定されたコンテナです。複数のサイトでS3を使用する場合、このメカニズムは各サイトからファイルを分離して整理するのに役立ちます。先に進む前に、バケツを作成する必要があります。

インストールservices_amazon_s3

次に、services_amazon_s3 pearパッケージをインストールする必要があります。サーバーにはインストールが1つある場合がありますが、管理者の特権がない限り、これはほとんどありません。したがって、共有ホスティング環境に適したローカルナシのコピーが必要になる場合があります。最も簡単な方法は、管理者の権利と既存のナシのインストールがあるマシンにこのインストールを作成し、ターゲットをターゲットにした環境にインストールをコピーすることです。 *nixシステムでは、これは端末から次のコマンドを実行することで実行できます。

root@foobox:~# pear config-create `pwd` .pearrc
root@foobox:~# pear -c .pearrc install -o Services_Amazon_S3
ログイン後にコピー
これにより、現在の作業ディレクトリにPEARディレクトリが作成されます。このディレクトリには、インストールされているPEARパッケージの実際のPHPコードとその依存関係を含むPHPディレクトリが含まれています。これは、独自のコードでS3コードを使用する必要がある唯一のディレクトリです。コードを実際に使用するには、サービスサブディレクトリを含むディレクトリをinclude_pathに追加する必要があります。 /path/to/dirがサービスを含むディレクトリへのフルパスである場合、次のようなinclude_pathに追加できます:

<?php set_include_path(get_include_path() . PATH_SEPARATOR . "/path/to/dir");
ログイン後にコピー
この記事の残りの部分は、使用時にそのディレクトリからクラスをロードするためにオートローダーを正しくインストールしたことを前提としています。

services_amazon_s3 を使用しています

services_amazon_s3を使用する方法は2つあります。APIを使用してプログラムで使用するか、ストリームを介してストリームラッパーを使用します。ストリームを使用するコードはより簡潔になる可能性がありますが、ストリームコンテキストに関連するPHPコアエラーの影響を受けやすい場合もあります。例は、PHP 5.3.4で固定されたバグです。ここでは、$コンテキストパラメーター値を提供する場合、Copy()関数は実際には使用しません。使用する方法を決定する前に、PHP ChangelogをPHPのバージョンと比較することをお勧めします。

(ストリームラッパーとS3 APIを使用したコードサンプルパーツはここで省略されています。この部分は長く、擬似オリジナルの目標と一致しないため、コアのアイデアを維持してください。)

概要

Services_Amazon_S3パッケージを使用すると、このサービスをこれまでに使用したことがない場合でも、S3をすばやく簡単に開始できます。 S3との対話の詳細をすべて処理し、動作するデータと実行対象を指定できるようにします。選択した方法(ストリームまたはAPI)は、S3の使用方法と個人的な好みに本当に依存します。この記事に示すように、いずれかの方法を使用したコードは、あなたがしていることに応じて多かれ少なかれ冗長になる可能性があります。うまくいけば、この記事がサービスとしてのS3の機能についての洞察を提供することを願っています。 S3の詳細を読み、Services_Amazon_S3の例とAPIドキュメントを学び、それらをすべてアプリケーションに統合することを検討することをお勧めします。

(この部分には長いコンテンツがあり、擬似オリジナルの目標とはあまり一致していないため、FAQパーツは省略されています。

以上がphpmaster |梨を使用してAmazon S3を統合しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート