[英]remove a specific part from url with htaccess and redirect
我在我的 WordPress 網站上使用 translatepress,所以我的網站 URL 類似於example.com/en-ae/hair-transplant
但現在我刪除了 translatepress,所以現在我的 URL 類似於example.com/hair-transplant
但我已經提交了使用en-ae
slug 進行 SEO。 我希望如果en-ae
存在於任何 URL 中,那么它會自動刪除並重定向到沒有en-ae
的頁面。
例如example.com/en-ae/hair-transplant
重定向到example.com/hair-transplant
。
您需要 Apache 的重寫模塊: mod_rewrite 。
然后在您的 htaccess 中:
RewriteEngine on
RewriteRule ^en-ae/(.*)$ $1
要從所有請求的 URL中刪除/en-ae
前綴(以幫助保留 SEO),您需要在.htaccess
根文件的頂部附近添加以下內容,在WordPress 代碼塊之前(即在# BEGIN WordPress
注釋之前) ):
# Remove "/en-ae/" prefix from all requests
RewriteRule ^en-ae/(.*) /$1 [R=301,L]
您無需重復RewriteEngine
指令,該指令已在文件的后面部分出現(在 WordPress 代碼塊中)。
R=301
標志觸發外部“永久”重定向 - 沒有它,URL 前綴實際上不會被刪除。 但是,您應該首先使用 302(臨時)重定向進行測試,以避免潛在的緩存問題。
如果 WordPress 代碼塊中省略了RewriteBase
指令,則替換字符串上的斜杠前綴是避免格式錯誤的重定向所必需的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.