AWS SDK for PHP バージョン 3 の AWS リージョン の設定 - AWS SDK for PHP

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK for PHP バージョン 3 の AWS リージョン の設定

SDK クライアントは、クライアントの作成時に指定した特定の AWS リージョン の AWS のサービス に接続します。この設定により、アプリケーションはその地理的エリアの AWS リソースとやり取りできます。リージョンを明示的に設定せずにサービスクライアントを作成すると、SDK は外部設定からデフォルトのリージョンを使用します。

リージョン解像度チェーン

AWS SDK for PHP バージョン 3 では、次の順序を使用して、サービスクライアントが使用するリージョンを決定します。

  1. コードで提供されるリージョン — クライアントコンストラクタオプションでリージョンを明示的に設定すると、それが他のすべてのソースよりも優先されます。

    $s3Client = new Aws\S3\S3Client([ 'region' => 'us-west-2' ]);
  2. 環境変数 — コードにリージョンが指定されていない場合、SDK はこれらの環境変数を順番にチェックします。

    • AWS_REGION

    • AWS_DEFAULT_REGION

    # Example of setting Region through environment variables. export AWS_REGION=us-east-1
  3. AWS 設定ファイル — リージョン環境変数が設定されていない場合、SDK は AWS 設定ファイルをチェックします。

    1. SDK は ~/.aws/config (または AWS_CONFIG_FILE 環境変数で指定された場所) を検索します。

    2. SDK は、AWS_PROFILE 環境変数で指定されたプロファイル内のリージョン設定を調べます。

    3. AWS_PROFILE が指定されていない場合、SDK は「default」プロファイルを使用します。

    例として、次の設定ファイル設定があるとします。

    # Example ~/.aws/config file. [default] region = eu-west-1 [profile production] region = eu-central-1

    AWS_PROFILE 環境変数が「production」の値で設定されている場合、クライアントは eu-central-1 Region を使用します。AWS_PROFILE 環境変数が存在しない場合、クライアントは eu-west-1 リージョンを使用します。

  4. 上記のソースのいずれかで SDK がリージョン値を見つけられない場合、リージョン値はサービスクライアントに必須の設定であるため、例外がスローされます。

ベストプラクティス

AWS SDK for PHP バージョン 3 でリージョンを使用する際は、次のベストプラクティスを考慮してください。

本番コードでリージョンを明示的に設定する

本稼働アプリケーションでは、環境変数や config に依存するのではなく、コードでリージョンを明示的に設定することをお勧めします。これにより、コードの予測性が向上し、外部設定への依存が少なくなります。

開発とテストに環境変数を使用する

開発環境とテスト環境では、環境変数を使用すると、コードを変更せずに柔軟性を向上できます。

複数の環境にプロファイルを使用する

アプリケーションで複数の AWS 環境を使用する必要がある場合は、 AWS config ファイルで異なるプロファイルを使用し、必要に応じてプロファイルを切り替えることを検討してください。