[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}

設定Fastly服務

雲端基礎結構測試和生產環境上的Adobe Commerce需要Fastly。

Fastly與Varnish合作,提供快速快取功能以及用於靜態資產的內容傳遞網路(CDN)。 Fastly還提供網站應用程式防火牆(WAF),以保護您的網站和雲端基礎結構。 為了保護您的網站和雲端基礎結構免受惡意流量和攻擊,請透過Fastly路由所有傳入的網站流量。

NOTE
Fastly在整合環境中不可用。

請完成下列步驟,在網站開發程式早期啟用、設定和測試Fastly,以啟用對網站的安全存取。

  • 取得測試和生產環境的Fastly認證
  • 啟用Fastly CDN快取
  • 上傳Fastly VCL片段
  • 更新DNS設定以將流量路由到Fastly服務
  • 測試Fastly快取
NOTE
啟用和驗證初始Fastly設定後,您可以自訂設定。 例如,您可以啟用其他選項,例如影像最佳化、邊緣模組和自訂VCL程式碼。 請參閱自訂快取組態

在專案布建期間,Adobe會將您的專案新增至雲端基礎結構上Adobe Commerce的Fastly服務帳戶,並為Starter master和Pro測試和生產環境建立Fastly帳戶認證。 每個環境都有獨特的認證。

您需要Fastly認證才能從Adobe Commerce管理員設定Fastly CDN服務並提交Fastly API請求。

Fastly管理員儀表板存取權

在雲端基礎結構上使用Adobe Commerce,您無法直接存取Fastly管理員儀表板。

使用Adobe Commerce管理員檢閱和更新環境的Fastly設定。 如果您無法在管理員中使用Fastly功能解決問題,請提交Adobe Commerce支援票證

取得Fastly認證

測試和生產環境的Fastly服務ID和API權杖會儲存在您的雲端專案環境中。 您需要這兩個環境的認證。

取得Cloud Pro專案的認證

在Cloud Pro專案上,從IaaS掛載的共用目錄檢查認證。

  1. 使用SSH連線至伺服器。

  2. 開啟/mnt/shared/fastly_tokens.txt檔案以取得認證。

    測試和生產環境都有獨特的認證。 您必須取得每個環境的認證。

取得Cloud Starter專案的認證

在Cloud Starter專案中,從Cloud Console或使用Cloud CLI取得認證:

  • 從Cloud Console,檢查環境設定中的下列環境變數。

    • CONFIG__DEFAULT__SYSTEM__FULL_PAGE_CACHE__FASTLY__FASTLY_API_KEY

    • CONFIG__DEFAULT__SYSTEM__FULL_PAGE_CACHE__FASTLY__FASTLY_SERVICE_ID

  • 從您本機工作區的命令列,使用magento-cloud CLI至清單並檢閱 Fastly環境變數。

    code language-bash
    magento-cloud variable:get -e <environment-ID>
    

疑難排解

保護您的認證

請勿在支援票證、公開論壇或任何公開位置共用您的API Token。 此外,永遠不要將API權杖認可給程式碼存放庫 — 存放庫應僅包含沒有敏感資訊的不可變檔案。

Adobe Commerce支援已可存取必要的金鑰,因此您在尋求協助時不需要提供API Token。

如果您的API Token曾公開共用或附加至支援票證,即視為已洩漏。 在這種情況下,需要Adobe為您產生新Token。

啟用Fastly快取

您需要以下元件來啟用和設定Fastly服務:

  • 適用於Magento 2模組的最新版Fastly CDN已安裝在中繼和生產環境中。 請參閱Fastly升級

  • 雲端基礎結構中繼和生產環境上Adobe Commerce的Fastly認證

若要在Staging和Production中啟用Fastly CDN快取

  1. 登入管理員。

  2. 按一下​ 存放區 >設定> 組態 > 進階 > 系統,然後展開​ 完整頁面快取

    展開以選取Fastly

  3. 在​ 快取應用程式 ​區段中,從​ 使用系統值 ​移除選取專案,然後從下拉式清單中選取​ Fastly CDN

    選擇Fastly

  4. 展開​ Fastly組態 ​並選擇快取選項

  5. 設定快取選項之後,按一下頁面頂端的​ 儲存設定

  6. 根據通知清除快取。

  7. 繼續設定Fastly,瀏覽回​ 商店 > 設定 > 設定 > 進階 > 系統 > Fastly設定

測試Fastly認證

  1. 在管理員上,瀏覽至​ 商店 >設定> 設定 > 進階 > 系統 > 快速設定

  2. 如有需要,請為您的專案環境新增​ Fastly服務ID ​和​ API權杖 ​值。

    Fastly認證管理員

    note note
    NOTE
    請勿選取連結來建立Fastly API權杖。 請改用Adobe提供的Fastly認證(服務ID和API權杖)。
  3. 按一下​ 測試認證

  4. 如果測試成功,請按一下​ 儲存組態,然後清除快取。

    如果測試失敗,請確認正確的服務ID和API權杖值符合目前環境的認證。

    如果測試再次失敗,請提交Adobe Commerce支援票證或聯絡您的Adobe客戶代表。 對於Pro專案,請包含生產及測試網站的URL。 對於入門專案,包含您的Master和測試網站的URL。

NOTE
如需為測試或生產環境變更Fastly API權杖認證的指示,請參閱變更Fastly認證

將VCL上傳到Fastly

啟用Fastly模組後,將預設VCL代碼上傳到Fastly伺服器。 此程式碼提供一系列VCL程式碼片段,這些程式碼會指定組態設定,以啟用雲端基礎結構上Adobe Commerce的快取和其他Fastly CDN服務。

NOTE
在您完成將Fastly VCL程式碼的初始上傳到Adobe Commerce中繼和生產網站之前,Fastly快取服務無法運作。

若要上傳Fastly VCL

  1. 在​ Fastly組態 ​區段中,按一下​ 將VCL上傳至Fastly,如下圖所示。

    將Magento VCL上傳至Fastly

  2. 上傳完成後,請根據頁面頂端的通知重新整理快取。

布建SSL/TLS憑證

Adobe提供網域驗證讓我們加密SSL/TLS憑證,以提供來自Fastly的安全HTTPS流量。 Adobe為每個Pro生產、測試和入門生產環境提供一個憑證,以保護該環境中的所有網域。 如需所提供憑證的詳細資訊,請參閱雲端基礎結構上Adobe Commerce的Adobe SSL (TLS)憑證

NOTE
您可以提供自己的TLS或SSL憑證,而不使用Adobe提供的Let's Encrypt憑證。 不過,此程式需要額外的設定和維護工作。 若要選擇此選項,請提交Adobe Commerce支援票證,或與Adobe搭配使用,在雲端基礎結構環境中將自訂的託管憑證新增到您的Adobe Commerce。

若要為Adobe Commerce環境啟用SSL/TLS憑證,Adobe自動化會完成下列步驟:

  • 驗證網域擁有權
  • 布建Let's Encrypt SSL/TLS憑證,涵蓋商店的指定頂層和子網域
  • 在網站上線時將憑證上傳到雲端環境

此自動化需要您更新網站的DNS設定,以提供網域驗證資訊。 使用下列方法中的​ one

  • DNS驗證 — 對於已上線的網站,請以指向Fastly服務的CNAME記錄更新您的DNS設定
  • ACME挑戰CNAME記錄 — 使用Adobe針對您環境中的每個網域提供的ACME挑戰CNAME記錄更新您的DNS設定
TIP
如果您的生產網域未啟用,請使用ACME挑戰CNAME記錄進行網域驗證。 及早將記錄新增至您的DNS設定可讓Adobe在網站啟動之前,以正確的網域布建SSL/TLS憑證。 在啟動至生產環境之前,您必須以Adobe提供的CNAME記錄取代這些預留位置記錄。

網域驗證完成後,Adobe會布建「讓我們加密TLS/SSL」憑證,並將其上傳至即時中繼或生產環境。 此程式最多可能需要12小時的時間。 Adobe建議您提前幾天完成DNS設定更新,以免網站開發和網站啟動延遲。

使用開發設定更新DNS設定

在初始Fastly設定流程中,您可以使用以下URL來設定和測試Staging和生產環境中的Fastly快取:

  • 對於Pro測試與生產:

    • mcprod.<your-domain>.com
    • mcstaging.<your-domain>.com
  • 僅供入門級生產使用:

    • mcprod.<your-domain>.com

布建專案後,即可使用這些預設的生產前URL。 "your-domain"的值是您在入門流程中指定的網域名稱。

NOTE
您無法在入門專案上為非生產環境指定自訂網域。

若要將流量從您的商店URL路由到Fastly服務,請更新您的DNS設定。 當您更新設定時,Adobe會自動布建必要的SSL/TLS憑證,並將其上傳至您的雲端環境。 此布建最多可能需要12小時的時間。

NOTE
當您準備好啟動生產網站時,必須再次更新DNS設定以將您的生產網域指向Fastly服務並完成其他設定任務。 請參閱啟動檢查清單

必要條件:

  • 啟用Fastly模組。
  • 上傳預設的Fastly VCL程式碼。
  • 提供每個環境的頂層和子網域清單給Adobe,或提交Adobe Commerce支援票證。
  • 等候確認指定的網域已新增到您的雲端環境。
  • 在入門專案中,將網域新增到您的Fastly服務設定。 請參閱管理網域
  • 如需有關更新DNS設定的資訊,請向您的DNS登入器查詢您網域服務的正確方法。

若要更新您用於開發的DNS設定

  1. 透過新增CNAME記錄: prod.magentocloud.map.fastly.net將預生產URL指向Fastly服務,例如:

    table 0-row-2 1-row-2 2-row-2
    網域或子網域 CNAME
    mcprod.your-domain.com prod.magentocloud.map.fastly.net
    mcstaging.your-domain.com prod.magentocloud.map.fastly.net

    當CNAME記錄上線時,Adobe會布建憑證並上傳SSL/TLS憑證。

    note note
    NOTE
    如果您計畫將Apex網域(your-domain.com)用於您的生產網站,您必須設定DNS位址記錄(A記錄)以指向Fastly伺服器IP位址。 請參閱使用生產設定更新DNS設定
  2. 新增ACME挑戰CNAME記錄以進行網域驗證和生產SSL/TLS憑證的預先布建,例如:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
    網域或子網域 CNAME
    _acme-challenge.your-domain.com 0123456789abcdef.validation.magento.cloud
    _acme-challenge.www.your-domain.com 9573186429stuvwx.validation.magento.com
    _acme-challenge.mystore.your-domain.com 1234567898zxywvu.validation.magento.cloud
    _acme-challenge.subdomain.your-domain.com 1098765743lmnopq.validation.magento.cloud
    note note
    NOTE
    此範例中的ACME挑戰記錄為預留位置,目的並非布建您的Adobe Commerce預備和生產網站。 聯絡Adobe以取得您專案的正確ACME挑戰記錄資訊。

    新增CNAME記錄後,Adobe會驗證網域並為環境布建SSL/TLS憑證。 當您更新DNS設定以將流量從這些網域路由到Fastly服務時,Adobe會將憑證上傳到環境。

  3. 更新Adobe Commerce基底URL。

    • 使用SSH登入生產環境。

      code language-bash
      magento-cloud ssh
      
    • 使用Cloud CLI變更商店的基本URL。

      code language-bash
      php bin/magento setup:store-config:set --base-url="https://mcstaging.your-domain.com/"
      
    note note
    NOTE
    除了使用Cloud CLI之外,您也可以從管理員更新基底URL
  4. 重新啟動網頁瀏覽器。

  5. 測試您的網站。

測試Fastly快取

完成DNS設定變更後,請使用cURL命令列工具來驗證Fastly快取是否正常運作。

若要檢查回應標頭

  1. 在終端機中,使用下列curl命令測試您的即時網站URL:

    code language-bash
    curl -vo /dev/null -H Fastly-Debug:1 https://<live-URL>
    

    如果您尚未設定靜態路由或完成線上站台上網域的DNS設定,請使用繞過DNS名稱解析的--resolve旗標。

    code language-bash
    curl -vo /dev/null -H Fastly-Debug:1 --resolve <live-URL-hostname>:443:<live-IP-address>
    
  2. 在回應中,驗證標頭以確保Fastly正常運作。 例如,您應該會在回應中看到下列唯一標題:

    code language-http
    < Fastly-Magento-VCL-Uploaded: 1.2.228
    < X-Cache: HIT, MISS
    

如果標頭沒有正確的值,請參閱解決回應標頭中發現的錯誤以取得疑難排解說明。

升級Fastly模組

Fastly更新Magento 2模組的Fastly CDN以解決問題、提高效能並提供新功能。
Adobe建議您更新測試和生產環境中的Fastly模組至最新版本

如需模組版本和更新的最新資訊,請參閱GitHub上Magento2模組的Fastly CDN發行說明

更新模組後,您必須上傳VCL程式碼以將變更套用至Fastly服務組態。

WARNING
如果您已使用自訂版本自訂預設的Fastly VCL程式碼,則升級Fastly模組會覆寫您的變更。 如果您已新增具有唯一名稱的自訂VCL片段,則這些變更會在升級過程中保留。 最佳實務是升級測試環境並驗證變更,然後再將變更套用至生產環境。

若要檢查Magento 2 ​的Fastly CDN模組版本:

  1. 變更至雲端環境的根目錄。

  2. 使用Composer檢查安裝的版本。

    code language-bash
    composer show *fastly*
    
  3. 如果未安裝最新版本,請完成升級Fastly模組的步驟。

若要升級Fastly模組

  1. 在您的本機整合環境中,使用以下模組資訊來升級Fastly模組

    code language-text
    module name: fastly/magento2
    repository: https://github.com/fastly/fastly-magento2.git
    
  2. 將更新推送至測試環境。

  3. 登入您的測試環境的Admin以上傳VCL代碼

  4. 在Adobe Commerce測試網站上驗證Fastly服務

在測試網站上驗證Fastly服務後,在生產環境中重複升級過程。

TIP
如果您的Adobe Commerce環境中遇到Fastly服務問題,請參閱Adobe Commerce Fastly疑難排解員
recommendation-more-help
7c2b03ac-000c-497d-aba3-2c6dc720a938