全部產品
Search
文件中心

Edge Security Acceleration:使用Terraform配置網站開發模式

更新時間:Mar 19, 2026

使用Terraform可以快速為網站啟用開發模式,便於調試和驗證來源站點內容變更。

安裝Terraform並配置許可權

在本地安裝和配置Terraform

您可以參考安裝和配置Terraform,在本地使用Terraform。

  • 由於阿里雲帳號(主帳號)擁有資源的所有許可權,其AccessKey一旦泄露風險巨大,所以建議您使用滿足最小化許可權需求的RAM使用者的AccessKey。具體操作方式請參見建立AccessKey

  • 建立環境變數,用於存放身份認證資訊。

    AccessKey管理頁面上建立和查看您的AccessKey。

    若無對應環境變數,在執行terraform模板時無法確認身份資訊,將會導致調用失敗。

使用線上服務(免安裝和許可權配置)

如果您不想安裝Terraform,可以直接使用線上服務Cloud Shell

阿里雲Cloud Shell是一款協助您營運的免費產品,預裝了Terraform的組件,並配置好身份憑證(Credentials)。因此您可直接在Cloud Shell中運行Terraform的命令。更多資訊,請參見使用Terraform快速建立資源

重要

通過Cloud Shell使用Terraform時,由於其銷毀特性會導致資料丟失,因此建議您使用Cloud Shell做簡單、快速的操作,例如調試。更多使用限制,請參見使用限制

涉及的資源

配置網站開發模式

建立一個工作目錄,並按照以下說明分別在工作目錄中建立設定檔,並按照您的實際需求調整代碼中的配置資訊。

定義供應商及Terraform版本

首先需要建立一個名為 providers.tf 的設定檔,然後將以下代碼複製到設定檔中,用於集中管理所有 Provider 配置和版本約束。

terraform {
  required_providers {
    alicloud = {
      source  = "aliyun/alicloud"
      version = "1.266.0"
      region = "ap-southeast-1"
    }
  }
}

定義資源

  1. 建立一個名為 main.tf 的設定檔,然後將以下代碼複製到設定檔中,用於建立啟用了開發模式的網站。

    # 1. 購買網站套餐
    resource "alicloud_esa_rate_plan_instance" "default" {
      type       = "NS"        # 網站接入類型:NS(網域名稱伺服器接入)或 CNAME
      auto_renew = true       # 是否自動續約
      period     = "1"         # 購買周期(單位:月)
      coverage   = "overseas"  # 加速地區,詳細說明請參見本文"參數說明"章節
      auto_pay   = true       # 自動支付
      plan_name  = "basic"     # 套餐名稱,詳細說明請參見本文"參數說明"章節
      payment_type = "Subscription" #付費類型
    }
    
    # 2. 產生隨機數(用於產生唯一的測試網域名稱)
    resource "random_integer" "default" {
      min = 10000
      max = 99999
    }
    
    # 3. 建立網站並啟用開發模式
    resource "alicloud_esa_site" "default" {
      site_name        = "bcd${random_integer.default.result}.com"  # 網站名稱(網域名稱),生產環境請替換為實際網域名稱
      coverage         = "overseas"                                # 加速地區
      access_type      = "NS"                                      # 網站接入類型:NS 或 CNAME
      instance_id      = alicloud_esa_rate_plan_instance.default.id  # 套餐ID
      development_mode = "on"                                      # 啟用開發模式,詳細說明請參見本文"參數說明"章節
    }
  2. 進入設定檔所在目錄,執行如下命令,初始化Terraform環境。

    terraform init

    image

  3. 執行如下命令,驗證Terraform文法與配置。

    terraform validate

    返回資訊如下圖則表示驗證通過。

    image

  4. 執行如下命令,預覽執行結果。

    terraform plan
  5. 執行如下命令,執行Terraform指令碼。

    terraform apply
  6. 依據提示輸入yes確認執行即可。

驗證結果

執行terraform show命令

您可以在工作目錄中,使用以下命令查詢Terraform已建立資源的詳細資料:

terraform show

登入控制台查看

  1. 在ESA控制台選擇網站管理,在網站列單擊目標網站。

  2. 在左側導覽列,選擇緩衝 > 配置

  3. 配置頁面可以看到新建立的緩衝配置詳情。

(可選)清理資源

當您不再需要上述通過Terraform建立或管理的資源時,請運行terraform destroy命令以釋放資源。

terraform destroy

相關參考

套餐類型說明

Terraform的 alicloud_esa_rate_plan_instance資源中,plan_name 欄位的取值說明如下表所示。

參數值

套餐名稱

說明

entranceplan_intl

Entrance

適用於測試和小規模業務情境,提供基礎的加速和防護能力。

basicplan_intl

Pro

推薦配置,適用於中小型企業網站和應用。

vipplan_intl

Enterprise

適用於中大型企業,提供更高的效能和安全防護能力。

參數說明

Terraform的 alicloud_esa_site資源中,development_mode 欄位的取值說明如下表所示。

參數值

功能說明

說明

on

啟用開發模式

靜態資源請求將繞過ESA節點的緩衝組件,直接存取來源站點。適用於調試情境,便於對比來源站點和緩衝後的訪問效果。

off

禁用開發模式(預設)

靜態資源請求正常通過邊緣節點緩衝處理,按照緩衝策略返回內容。

使用情境

開發模式適用於以下情境:

  • 來源站點內容調試:當您需要確保用戶端立即擷取來源站點最新靜態資源時,可以啟用開發模式。

  • 效果對比測試:便於對比來源站點直接存取和通過ESA緩衝訪問的效果差異。

  • 快速驗證變更:來源站點內容更新後,無需等待緩衝到期或手動重新整理緩衝,即可立即驗證變更效果。

警告

開發模式會導致所有靜態資源請求直接回源,可能增加來源站點負載和回應時間。僅在開發調試階段使用,生產環境請務必關閉。

常見問題

執行Terraform代碼時出現"StatusCode400 Code: ConfExceedLimit"怎麼辦?

當您通過控制台配置過緩衝相關的配置後,便會自動產生一條對應的配置規則,但由於Terraform的 alicloud_esa_cache_rule資源屬於建立規則操作,因此無法直接更新已有的緩衝配置。您可以先調用APIListCacheRules擷取當前網站的緩衝配置IDConfigId,然後調用APIDeleteCacheRule刪除網站緩衝配置,再應用Terraform代碼即可。