什么301重定向适用于这种字符串格式?

时间:2018-02-08 19:44:10

标签: regex .htaccess redirect mod-rewrite

我有一个产品网址格式的电子商务商店: /类别名称/ subcat1name / subcat2name / 1450 - 我的小部件

我会将其缩短为: / 1450 - 我的小部件

我可以在电子商务软件中进行更改,但我需要为旧网址设置mod重写重定向。

为避免匹配类别,内容网页等的网址以及新格式的产品网址,我需要在所有这些条件下进行匹配:

  1. 不包含字符串“/ info /”
  2. 包含一个斜杠,后跟一个或多个字符,后跟另一个斜杠,后跟一个或多个数字,后跟“ - ”,后跟一个或多个字符
  3. 什么指令可行?

    编辑: 匹配和非匹配字符串的更多示例

    旧产品网址的匹配:

    /a-category/this-category/333--my-widget
    /some-cat/34--widgetname
    

    不匹配:

    /1918--widgetcategory/
    /info/12--about-us
    /quick-order
    /login?back=my-account
    /2050--my-widgetname
    

1 个答案:

答案 0 :(得分:0)

您可以将此301重定向规则用作站点根目录中的第一条规则.htaccess:

RedirectMatch 301 ^(?!.*/info/).*/[^/]+/([0-9]+--[^/]+)/?$ /$1