2009-04-27 108 views
1

我需要從路徑需要幫助的Apache的htaccess的重定向規則

/articles/20090425-swine-flu-kills.html 

重定向到

/2009/04/swine-flu-kills.html 

在原來的路徑,文章後面的數字都以YYYYMMDD格式的日期。這將在新路徑中轉換爲「/ yyyy/mm /」。

我想需要一些正則表達式,但我不知道如何。希望能得到幫助。由於

回答

1

試試這個:

RewriteRule ^articles/(\d{4})(\d\d)\d\d-(.*)$ /$1/$2/$3 

這符合:

  • ^articles/:字符串開頭 「的文章/」
  • (\d{4}):4位爲$ 1(年)
  • (\d\d) :2位數到2美元(本月)
  • \d\d-:2個位數&破折號(編輯:錯過了領先的破折號)
  • (.*)$:URL的其餘部分到$ 3
1
RewriteRule ^articles/(\d{4})(\d\d)\d\d\-(.+)$ /$1/$2/$3 

將是一個更好的解決方案。

+0

謝謝!我會嘗試兩種。只有一個字符差異,對我來說:-) – 2009-04-27 14:39:31