2009-09-30 38 views
0

[更新]301重定向 - 匹配文件名的一部分

我在下面提問,只是什麼是不可能的。在這種情況下,我的大腦傷害,我怎麼能簡單地重定向

MYDOMAIN/folderA/FolderB中/名稱 - 0000.php

myNewDomain/folderC/FolderB中/ name.php

[/ UPDATE]

我現在有一些網址的其中按照下面的模式。

/folder/folder2/name-name-id.php

內容現在已經被轉移到一個不同的文件結構的新領域。如果URL的ID部分現在不同,那麼將它們重定向將非常簡單。

所以我需要能夠重定向從域A以下:

/folderA/folderA2/name-name-0000.php上域B

這樣:

/folderB/folderB2/name-name-5555.php

我無法弄清楚如何匹配名稱部分並忽略該ID。請注意,名稱可以是n個單詞長,但不限於兩個。

任何想法?

+0

你怎麼知道新ID應該是什麼? – 2009-09-30 14:15:16

+0

經過考慮,你不能做我以後的事情。正如傑里米指出的那樣,我不知道新的身份證,因此無法知道該在哪裏指出它。 – Ben 2009-09-30 18:21:20

回答

0

嘗試的URL路徑正則表達式:

^/[^/]+/[^/]+/[^/]+-[0-9]+\.php$ 

現在在你的根目錄下的.htaccess文件的mod_rewrite的規則可以是這樣的,以匹配的名稱和ID:

RewriteRule ^folderA/folderA2/([^/]+)-([0-9]+)\.php$ … 

編輯後您編輯您的要求:

RewriteRule ^folderA/([^/]+)/([^/]+)-[0-9]+\.php$ /folderC/$1/$2.php [L,R=301] 
+0

謝謝,但我不認爲它可能不知道新的ID。 – Ben 2009-09-30 18:26:11

+0

是的,完美的作品,感謝您的幫助和快速響應。 – Ben 2009-09-30 18:47:28