2016-02-24 104 views
1

在WordPress中更新內容時,我發現生成slu plug的插件無法使用已經被另一個頁面使用的slu so,所以我必須將slu change更改爲略有不同。我現在需要確保任何嘗試舊網址的人都能在不影響主頁的情況下重定向到新網址。在不影響主目錄的情況下重定向子目錄

所以我有/members/與會員的服務,您可以點擊會員去/member/[name]我需要/members/[name]重定向到/member/[name][名]可以是任何東西,所以它需要一個通配符。

我已經使用了以下兩個htaccess規則(不是在同一時間),但他們總是最終重定向/成員/頁面也打破了一切。

RewriteRule ^members/(.*) http://domain.tld/member [R=301,L] 

RedirectMatch 301 ^/members/.*$ http://domain.tld/member 

我缺少什麼使它只如果有該/

阿里納斯之後的東西重定向:我試圖尋找一個答案,但所有我發現的結果正在嘗試做的完全相反(只重定向/ members /的完全匹配),我需要和不會工作。

回答

1

您沒有使用請求的截取部分。

嘗試:

RedirectMatch ^/members/(.+)$ /member/$1 
+0

哦,那不好,好吧我修正了這個問題,但是/成員......不知道你的更新修正了它:) – zfb

0

試試這個

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] 
RewriteRule ^(.*)$ http://%1/$1 [R=301,L] 
Redirect 301 /oldDir/old.php http://yourDomain/newDir/new.php 
+0

這看起來並不像我想要實現什麼?究竟是在這裏'^(。*)$ http://%1/$ 1'? – zfb

+0

我不知道細節。我只知道它適合我。 – Kobbe

+0

哦,我想你誤解了,我想重定向像/ members/1/members/2等子目錄通配符。 另外我想我明白你的'http://%1/$ 1'看起來好像如果它不在我認爲的地方,則爲「www」使用通配符。 – zfb

相關問題