【问题标题】:htaccess 301 redirects, not sure about correct regexhtaccess 301 重定向,不确定正确的正则表达式
【发布时间】:2012-08-22 15:32:58
【问题描述】:

谁能帮助我,我正在尝试使用 htaccess 解决一些重定向,但我遇到了一个棘手的问题。

我想不通的部分是:我有一个系统,它为以下模式的某些页面创建 2 个 url:

产品/类别(我们主要使用什么以及我们想要什么,无论类别深度如何) 产品/子类别/类别(可能对 SEO 更好,但不是我们想要的)

我如何编写 301 重定向来去除 url 的 /subcategory 部分并重定向到我们在 80 个子类别区域内拥有的较短版本,所以我不想一一尝试。我正在尝试掌握正则表达式,但我完全不喜欢它,我假设匹配子类别并不太难,因为它总是跟随 /product 并且总是以 / 结尾,但我如何将它重定向到缩短的版本。

我想不出要添加的更多信息,但如果我没有提供足够的详细信息,请告诉我,我希望得到一些帮助。

谢谢

【问题讨论】:

    标签: regex .htaccess


    【解决方案1】:

    在您的 htaccess 文件中尝试这些行:

    RewriteEngine on
    RewriteRule ^products/[^/]+/(.+)$ /products/$1 [L,QSA,R=301]
    

    【讨论】:

    • 我会给你这个正则表达式教程,你可以通过阅读它来更好地理解正则表达式是如何工作的(它有点长但包含所有内容)regular-expressions.info/tutorial.html
    • 哦,我应该了解它,这匹配我真正需要的任何东西,它只匹配“产品/子类别”而不是“任何东西/任何东西”,我正在尝试调整您的代码,但正在苦苦挣扎,有什么帮助吗?
    • 我有一本精通正则表达式的书,它很棒,所以我得到了一些我在这里看到的东西。这只是一种查看代码的全新方式。我试图让第一个表达式仅在它以“产品”结尾但无法弄清楚时才匹配。
    • 任何帮助,老实说,只有当它在 url 中包含 products/ 时,我才能看到如何匹配它。
    • 我编辑了我的代码,以便它只匹配以产品开头的网址(如果您需要的话)
    猜你喜欢
    • 2018-05-31
    • 2011-03-03
    • 2012-06-21
    • 2017-06-21
    • 2014-12-05
    • 1970-01-01
    • 2018-04-19
    • 1970-01-01
    相关资源
    最近更新 更多