Apache-2.2

如果您要實現大量重定向,有沒有辦法編寫更清晰的重寫規則

  • June 21, 2016

我最近完成了一個項目,我將一個相當大的網站移動到一個乾淨的小網站。這意味著我必須考慮大量已被搜尋引擎索引的頁面,並將它們適當地重定向到新網站上的相關頁面,使用301 Redirects.

我必須重定向 300 多個唯一 URL。我使用該模組來實現重定向,因為其中包含您的標準語句未讀取apache mod_rewrite的大多數 URL 。GET parameters``Redirect

例如,我有這樣的 URL:

https://olddomain/product.html?prod_id=143&id=234

和這樣的重定向:

RewriteCond %{QUERY_STRING} prod_id=143&id=234$
RewriteRule ^product\.html$ /products/product-a? [L,R=301]

幾乎所有人都是這種情況。我想我的問題是我寫下上面的 300 個單獨的重定向是正確的,還是有一種“更乾淨”的方法來做到這一點?我聽說有很多rewrite rules可能會減慢伺服器速度。

感謝您對這些人的意見,如果這不是道歉的正確地方,我將刪除並在相關交流中發布。

我將在應用程式碼本身中實現這些重定向,創建一個包含源 URL 和目標 URL 的數組,然後測試 URL 是否包含數組中的參數,將重定向發送回目標。

為此使用重寫規則是一種有點複雜的實現方式。

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