在AEM as a Cloud Service或AEM 6.5中使用Dispatcher發佈時,ZIP資產會傳回404
將ZIP檔案上傳至AEM DAM時,這些檔案會在「作者」中顯示為已發佈,但在「發佈」上存取時會傳回 404 錯誤。 其他資產型別(如PDF和影像)則可正常運作。 發生此情況是因為Dispatcher預設會封鎖ZIP請求。 若要修正此問題,請更新Dispatcher篩選規則以允許ZIP副檔名。
說明 description
環境
- AEM as a Cloud Service (AEMaaCS)
- AEM 6.5與Dispatcher
問題/症狀
- ZIP資產在AEM Author中顯示綠色的 已發佈 狀態。
- 直接存取Publish上的ZIP (例如,
/content/dam/.../file.zip)會傳回404。 - 復寫記錄檔未顯示錯誤。
- 其他資產型別(PDF、JPEG、SVG、MP4)則可正常運作。
- 重新壓縮或上傳新的ZIP檔案並不能解決問題。
原因
Dispatcher篩選規則通常以 全部拒絕 設定開頭,然後選擇性僅允許特定檔案型別。
限制篩選的範例通常包括:
/0001 { /type "deny" /url "*" }
/0010 {
/type "allow"
/extension '(css|gif|jpeg|jpg|js|pdf|png|svg|ttf|woff|woff2|html)'
/path "/content/*"
}
因為.zip是未包含在允許擴充功能清單中:
- Dispatcher會封鎖要求。
- 發佈例項有資產,但要求絕不會到達。
- 結束結果:找不到404,即使復寫成功。
解決方法 resolution
請依照下列步驟解決問題:
將.zip新增至Dispatcher篩選器中允許的副檔名清單。
-
開啟您的Dispatcher設定檔。
-
新增ZIP檔案的專用規則:
code language-none /00xx { /type "allow" /method "GET" /path "/content/dam/*" /extension "zip" } -
或者,更新現有的允許規則以包含
zip:code language-none /0010 { /type "allow" /extension '(css|gif|jpeg|jpg|js|pdf|png|svg|ttf|woff|woff2|html|zip)' /path "/content/*" } -
重新部署Dispatcher設定。
-
再次測試壓縮下載。
相關閱讀
- 在AEMaaCS使用手冊底下將資產上傳到存放庫
- 在AEM Dispatcher指南下設定對內容的存取權
- AEM Dispatcher指南中的Dispatcher安全性檢查清單
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f