2016-03-28 58 views
0

我已更改網絡平臺並擁有舊網址,但我無法在舊平臺所在的新平臺上與舊平臺無法匹配。如何重寫htaccess中以重複字符結尾的網址

我有一箇舊的產品網址數組,所有的網址都有'-p-',後跟一串數字並以.html(osCommerce平臺網址)結尾。

我想知道如何改寫:

/x/[rest-of-url]-p-[random numbers].html 

/x/[rest-of-url] 

我想最終的結果看起來是這樣的:

http://www.shop.com/shop/versace-black-snakeskin-pony-hair-hobo-p-2214.html 

重定向到:

http://www.shop.com/shop/versace-black-snakeskin-pony-hair-hobo 

有沒有人知道這是否可以作爲重寫規則在htaccess文件中執行?

回答

0

我的託管託管服務提供商BeepWeb回答了我的問題。

RewriteRule ^/shop/(.*)-p-(.*).html$ http://www.shop.com/product/$1/ [R=302] 

第一個參數是您匹配的URI。 (。)匹配任何字符。第二個參數是目標網址。 $ 1對應於第一個(.)。 $ 2將是第二個(。*),依此類推... [R = 302]指示重寫爲302重定向(對301重定向使用[R = 301])。

使用(。)基本上就像使用wildard。您可以通過指定要匹配哪些字符而不是所有字符(而不是使用(。)可以使用([abc] *)來匹配a,b和c字符)來縮小此範圍。

另外,請注意您不會無意中與其他網址匹配(即您需要確保模式匹配對於正在重寫的網址是唯一的)。

如果您需要源參考,請參閱以下內容:再次 https://httpd.apache.org/docs/current/rewrite/intro.html

感謝http://www.beepweb.com爲他們詳細的答覆。 希望它可以幫助別人。