【问题标题】:Create two different rules on .htaccess: redirect some urls to my old site and create 301 redirects for news from my old to new site在 .htaccess 上创建两个不同的规则:将一些 url 重定向到我的旧站点并为从旧站点到新站点的新闻创建 301 重定向
【发布时间】:2019-10-14 15:37:44
【问题描述】:

我正在尝试了解如何重定向我的新网站上尚未激活的一些网址,但将其他一些网址重定向到我的新网站上的新导入页面 示例

我有我想重定向的 joomla 网站 www.mywebsite.it/itold.mywebsite.it/it

但也有一些针对新闻和某些页面的特定 301 重定向 it/notizie/2036-slugnews.htmlnotizie/year/notizia/slugnews

我正在开发 Apache2,使用 mysql 5.7、php 7.2 和 October Cms。 启用 mod_rewrite 和 laravel

阅读以下示例: https://www.danielmorell.com/guides/htaccess-seo/redirects/introduction-to-redirects

想象我必须尝试编写一个条件,在 /it/* 之后获取所有 url,但插入一个异常来写入除 301 重定向之外的所有 url

老实说不知道如何重定向写条件。

你有什么建议吗?

【问题讨论】:

    标签: laravel .htaccess redirect


    【解决方案1】:

    您应该将特殊 url 重定向放在 .htaccess 文件中的一般规则之前: 例如:

    RewriteEngine on
    RewriteRule ^it/notizie/2036\-slugnews\.html$ http://old.mywebsite.it/notizie/year/notizia/slugnews? [R=301,L]
    RewriteCond %{HTTP_HOST} ^www\.mywebsite\.it$
    RewriteRule ^(.*)$ http://old.mywebsite.it/$1 [R=301,L]
    

    如果您不熟悉重定向,我建议您使用 https://www.301-redirect.online/ 301 redirect generator 作为您的特殊页面到页面规则。这台发电机是我目前所知道的最好的一台。

    此外,如果您的网站使用安全连接,请将 http:// 更改为 https://。

    【讨论】:

      【解决方案2】:

      经过一系列试验,我找到了一个中间解决方案:

      RedirectMatch 301 ^/it(.*)$ https://www.mysite.it$1
      RewriteRule ^it/genericpage.html https://www.mywebiste.it/genericapagetoredirect? [R=301,L]
      RewriteRule ^it/notizie/2002-slug.html https://www.mywebiste.it/notizie/2019/notizia/slugtoberedirected? [R=301,L]
      

      通过这种方式,我将旧的 https://www.mysite.it/it 主页重定向到 https://www.mysite.it 以及一些带有一对一重定向的网址

      但这不是我的目标。

      推理我找到了明确的解决方案

      我的目标是重定向 1)一堆带有重写url 301的url 2)所有未包含在重写url列表中的链接一般为https://www.mysite.it 3) 所有坏链接 joomla 网站创建从 www.mysite.it/it/tags/* 和 www.mysite.it/it/components/* 到 www.mysite.it

      坦率地说,总体目标是在 google 搜索控制台中维护具有高权限的链接网址。

      意识到这一点,我试图

          RewriteRule ^it/genericpage\.html$ https://www.mywebiste.it/genericapage? [R=301,L]
          RewriteCond %{HTTPS_HOST} ^www\.mysite\.it$
          RewriteRule ^it/$ https://www.mysite.it/? [R=301,L]
      

          RewriteRule ^it/genericpage\.html$ https://www.mywebiste.it/genericapage?[R=301,L]
          RewriteCond %{HTTPS_HOST} ^www\.mysite\.it$
          RewriteRule ^it(/.*) $1 [R=301,L]
      

      但没有成功。

      你怎么看?

      【讨论】:

        猜你喜欢
        • 2019-07-03
        • 1970-01-01
        • 2017-07-25
        • 1970-01-01
        • 1970-01-01
        • 2018-05-01
        • 2016-06-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多