.htaccess urlrewrite删除号码

时间:2012-09-12 11:12:58

标签: regex .htaccess url-rewriting

我需要编写一个正则表达式来从URL的末尾删除一个大数字。

以下是一些例子:

/uk/futsal-cosmos-10-panel-match-football-white-purple-24100787502654/
/uk/escape-t400-individual-rubber-dumbbells-up-to-50kg-2289101502719397/
/uk/golds-gym-standard-hammertone-plate-25-4mm-1-25kg-x-12-1736702088365877/

所以基本上我需要移除最后的数字,包括破折号。

在第三个例子中,这应该成为:

/uk/golds-gym-standard-hammertone-plate-25-4mm-1-25kg-x-12/

即。 12应该保留。

1 个答案:

答案 0 :(得分:1)

如果最后一个数字始终以 - 开头,请尝试此

<IfModule mod_rewrite.c>
   RewriteEngine on

   RewriteRule ^(.*)-[0-9]+/$ /$1/ [L,QSA]
</IfModule>

如果要进行301重定向,请将[L,QSA]替换为[R = 301,L]

短划线后的10位数

RewriteRule ^(.*)-[0-9]{10}/$ /$1/ [L,QSA]