Apache-2.2

CMS 遷移後使用重定向數據庫和 apache http 保留 URL?

  • December 5, 2012

我們會將整個 Intranet 從一個 CMS 遷移到另一個。所有 URL 都會以不可預測的模式發生變化,但我可以擷取一個帶有原始新 URL 的文件,我可以將其輸入任何內容。我有幾十萬個 URL,而不僅僅是幾百個。

我想做的事:應該根據數據庫檢查每個未找到的 URL (404),如果發現新 URL,則改為發出 301/308。如果查找不成功,在 404 消息中建議類似頁面的一些技巧將是一個額外的好處。

這是正確的方法還是我應該一直檢查重定向?

我將如何在 Apache2 中做到這一點?那是自定義的 404 模組嗎?

我想通了,部分。雖然 404 仍然讓我難以理解,但我可以使用 mod_rewrite 和 RewriteMap 指令來主動重寫 URL,而不是首先依賴 404 狀態。這可以工作:

RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap blog-map dbm:/home/stw/www/blogmap.map
RewriteRule ^/blog/d6plinks/(.*) /blog/${blog-map:${lowercase:$1}} [NC,R=301,L]

詳細說明這裡。現在使用 ErrorDocument 語句,最初的目標可能是可以實現的。

引用自:https://serverfault.com/questions/449278