【问题标题】:htaccess rewriterule to redirect to new domainhtaccess rewriterule 重定向到新域
【发布时间】:2016-12-21 08:59:41
【问题描述】:

我需要将所有文章从旧域重定向到新域。旧领域文章(非 wordpress 网站)的 slug 就像:

www.olddomain.com/CATEGORY_NAME/ID_ARTICLE/ARTICLE_SLUG

新的领域文章(wordpress 网站)slugs 是这样的:

www.newdomain.com/ARTICLE_SLUG

所以,我需要 htaccess 规则从旧域重定向到新域,即删除旧域的前两个段(CATEGORY_NAME 和 ID_ARTICLE)。

目前,我在 htaccess 文件中有这个:

RewriteRule ^(.*)$ http://www. newdomain .com/$1 [R=301,L]

但它会使用所有 url 进行重定向。

【问题讨论】:

    标签: php apache .htaccess mod-rewrite url-rewriting


    【解决方案1】:

    试试这个:

    RewriteEngine on
    RewriteBase /
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    
    RewriteCond %{HTTP_HOST} ^www\.olddomain\.com
    RewriteRule ^(.*)/(.*)/(.*)$ http://www.newdomain.com/$3 [L,R=301,QSA]
    

    如果文件中有进一步的重写,则丢失[L] 标志。

    tested it online,它似乎可以按你的意愿工作:

    【讨论】:

      猜你喜欢
      • 2023-02-01
      • 2014-04-06
      • 2019-04-25
      • 1970-01-01
      • 2014-03-17
      • 1970-01-01
      • 2016-06-24
      • 2011-12-05
      • 1970-01-01
      相关资源
      最近更新 更多