AWS 區域 設定第 3 適用於 PHP 的 AWS SDK 版的 - 適用於 PHP 的 AWS SDK

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS 區域 設定第 3 適用於 PHP 的 AWS SDK 版的

SDK 用戶端會連接到 AWS 區域 您在建立用戶端時指定的特定 AWS 服務 中的 。此組態可讓您的應用程式與該地理區域 AWS 的資源互動。當您在不明確設定區域的情況下建立服務用戶端時,軟體開發套件會使用外部組態的預設區域。

區域解析鏈

第 3 適用於 PHP 的 AWS SDK 版使用下列順序來判斷服務用戶端使用的區域:

  1. 程式碼中提供的區域 - 如果您在用戶端建構函數選項中明確設定區域,這優先於所有其他來源。

    $s3Client = new Aws\S3\S3Client([ 'region' => 'us-west-2' ]);
  2. 環境變數 - 如果程式碼中未提供任何區域,軟體開發套件會依序檢查這些環境變數:

    • AWS_REGION

    • AWS_DEFAULT_REGION

    # Example of setting Region through environment variables. export AWS_REGION=us-east-1
  3. AWS 組態檔案 - 如果未設定區域環境變數,軟體開發套件會檢查 AWS 組態檔案:

    1. SDK 會尋找 ~/.aws/config(或AWS_CONFIG_FILE環境變數指定的位置)

    2. SDK 會檢查AWS_PROFILE環境變數所指定設定檔內的區域設定

    3. 如果未指定 AWS_PROFILE ,軟體開發套件會使用「預設」描述檔

    例如,假設我們具有下列組態檔案設定:

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

    如果AWS_PROFILE環境變數設定為「生產」值,用戶端會使用 eu-central-1 Region。如果沒有AWS_PROFILE環境變數,用戶端會使用 eu-west-1區域。

  4. 如果開發套件在上述任何來源中找不到區域值,則會擲回例外狀況,因為區域值是服務用戶端的必要設定。

最佳實務

使用第 3 適用於 PHP 的 AWS SDK 版中的區域時,請考慮下列最佳實務:

在生產程式碼中明確設定區域

對於生產應用程式,我們建議您在程式碼中明確設定區域,而不是依賴環境變數或 config。這可讓您的程式碼更可預測,並減少對外部組態的依賴。

使用環境變數進行開發和測試

對於開發和測試環境,使用環境變數可提供更多彈性,而無需變更程式碼。

使用多個環境的設定檔

如果您的應用程式需要使用多個 AWS 環境,請考慮在您的 AWS config 檔案中使用不同的設定檔,並視需要在它們之間切換。