【问题标题】:301 redirects for urls ending in numbers and contain folder name以数字结尾并包含文件夹名称的 url 的 301 重定向
【发布时间】:2013-08-15 10:44:35
【问题描述】:

我想放置来自旧网址的 301 重定向,看起来像 http://www.domain.com/news/blocked-drainage/drain-cleaning-companies-help-in-restoring-your-clogged-drains/408

http://www.domain.com/blocked-drainage/drain-cleaning-companies-help-in-restoring-your-clogged-drains/

所以有两个变化,首先是新网址中的news 文件夹,其次是网址末尾没有数字。

提前感谢您的帮助。

【问题讨论】:

    标签: apache .htaccess redirect


    【解决方案1】:

    试试这个:

    RewriteRule ^news\/(.+)\/([0-9]+)$ /blocked-drainage/$1/ [R=301]
    

    (Novocaine88 的回答不起作用,因为 RewriteRule 只尝试匹配 URL 的 path 组件。)

    【讨论】:

    • 简化它:RewriteRule ^news/(.+?)/([0-9]+)/?$ /blocked-drainage/$1/ [R=301,L]
    • @anubhava 我曾经在替换文本中看到/ 也进行了转义。 :)
    • @RaviThapliyal:同意,我也看到了,它没有害处但不需要。
    • @CBroe +1 这应该可以,但不要捕获数字 () 并添加可选的斜线 /[0-9]+/?$
    • @anubhava:是的,人们喜欢 Windows :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-04
    • 2014-12-07
    • 2014-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多