自訂錯誤和維護頁面
當對Fastly來源的要求失敗時,Fastly會傳回預設回應頁面,其中包含基本格式和一般訊息,可能會讓使用者感到困惑。 例如,當對Fastly來源的要求因503錯誤而失敗時,Fastly會傳回以下預設錯誤頁面。
您可以更新Adobe Commerce存放區設定,以擁有更友善訊息和改善HTML樣式的頁面取代某些預設回應頁面,如下列範例所示。
目前,您可以在雲端基礎結構專案上為Adobe Commerce自訂以下Fastly回應頁面。
HTML編碼需求:
自訂頁面的HTML程式碼必須符合下列要求:
- 內容最多可包含65,535個字元。
- 指定HTML來源中的所有CSS內嵌。
- 使用base64在HTML頁面中捆綁影像,以便即使Fastly離線也能顯示。 檢視css-tricks網站🔗上的資料URI。
自訂503錯誤頁面
客戶會在下列情況下看到預設503錯誤頁面:
- 當對Fastly來源的請求傳回大於500的回應狀態時
- 當Fastly來源關閉時,例如逾時、維護活動或健康問題
您可以調整下列HTML代碼以包含符合Adobe Commerce商店主題的樣式,並視需要修改標題和訊息,藉此自訂預設頁面。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>503</title>
</head>
<body>
<p>Service unavailable</p>
</body></html>
驗證已修改的來源在瀏覽器中是否正確顯示。 然後,將自訂HTML程式碼新增到Fastly設定。
將自訂回應頁面新增到Fastly設定:
-
登入管理員。
-
選取 商店 > 設定 > 組態 > 進階 > 系統。
-
在右窗格中,展開 完整頁面快取 > Fastly設定 > 自訂合成頁面。
-
選取 設定HTML。
-
將自訂回應頁面的原始程式碼複製並貼到HTML欄位中。
-
選取頁面頂端的 上傳,將自訂HTML來源上傳至Fastly伺服器。
-
選取頁面頂端的 儲存組態 以儲存更新的組態檔。
-
重新整理快取。
-
在頁面頂端的通知中,選取 快取管理 連結。
-
在快取管理頁面上,選取 排清Magento快取。
-
自訂WAF錯誤頁面
當對Fastly來源的要求失敗並因為WAF封鎖事件造成的403 Forbidden
錯誤時,客戶會看到以下預設WAF錯誤頁面。
下列程式碼範例顯示預設頁面的HTML來源:
<html>
<head>
<title>Magento 403 Forbidden</title>
</head>
<body>
<p>The requested URL was rejected.</p>
<p>For additional information, please contact support and provide this reference ID:</p>
<p>"} req.http.x-request-id {"</p>
<p><button onclick='history.back();'>Go Back</button></p>
</body>
</html>
您可以使用Fastly設定功能表中的 自訂綜合頁面 > 編輯WAF頁面 選項,自訂雲端基礎結構專案上Adobe Commerce的預設程式碼。 編輯程式碼時,請保留下列提供WAF封鎖事件參考ID的行:
<p>"} req.http.x-request-id {"</p>
若要編輯WAF錯誤頁面:
-
選取 商店 > 設定 > 組態 > 進階 > 系統。
-
在右窗格中,展開 完整頁面快取 > Fastly設定 > 自訂合成頁面。
-
選取 編輯WAF頁面。
-
填寫欄位以更新HTML。
- 狀態 — 選取
403 Forbidden
狀態。 - MIME型別 — 型別
text/html
。 - 內容 — 編輯預設HTML回應以新增自訂CSS,並視需要更新標題和訊息。
- 狀態 — 選取
-
選取頁面頂端的 上傳,將自訂HTML來源上傳至Fastly伺服器。
-
選取頁面頂端的 儲存組態 以儲存更新的組態檔。
-
重新整理快取。
-
在頁面頂端的通知中,選取 快取管理 連結。
-
在快取管理頁面上,選取 排清Magento快取。
-
顯示錯誤報告編號
依預設,Fastly會隱藏 503服務無法使用 錯誤背後的所有Adobe Commerce錯誤。 若要顯示錯誤記錄報告編號,以便找到並檢閱記錄中的錯誤詳細資料,請使用以下步驟開啟省略Fastly的網站:
-
擷取存放區的IP位址:
-
對於Pro測試和生產環境:
code language-bash nslookup {your_project_id}.ent.magento.cloud
-
針對專業整合環境和入門環境:
code language-bash nslookup gw.{your_region}.magentosite.cloud
-
-
將應用程式網域和IP位址新增至本機工作站的主機檔案:
code language-text {server_IP} {store_domain}
-
清除瀏覽器快取和Cookie (或切換到無痕模式)。
-
再次開啟您的商店網站以檢視錯誤代碼。
-
使用錯誤碼在錯誤報告檔案中尋找詳細資訊:
-
找到
./var/report/{error_number}
檔案。