如何删除影响我的 SEO 的重复网址

Posted

技术标签:

【中文标题】如何删除影响我的 SEO 的重复网址【英文标题】:How to remove duplicate urls that are affecting my SEO 【发布时间】:2021-10-16 11:32:43 【问题描述】:

希望有人可以帮助我。我已经尝试了所有我能想到的方法,现在已经花了将近 2 周的时间来解决这个问题。我正在使用 SERanking 进行网站审核,这表明我需要修复重复的 url 问题。

有问题的页面: https://www.droneworxphotography.com/ 0(参考页面) https://www.droneworxphotography.com/index.html 10(参考页面) https://www.droneworxphotography.com 10(参考页面)

我的 htaccess:

   RewriteEngine On
   RewriteCond %SERVER_PORT 80
   RewriteRule ^(.*)$ https://www.droneworxphotography.com/$1 [R,L]
   RewriteCond %REQUEST_FILENAME !-d
   RewriteRule ^(.*)/$ /$1 [L,R] # <- for test, for prod use [L,R=301]

我已尝试添加 301 重定向,但无法解决我的问题。

   Redirect 301 /droneworxphotography.com/index.html /droneworxphotography.com

我希望有人可以帮助我解决这个问题。 谢谢

【问题讨论】:

在实施 301 重定向之前,您需要实际修复内部链接,以便始终链接到规范 URL。 感谢您的意见。我对此有点陌生,并且花了一个小时又一个小时研究规范。据我所知,我的内部链接是一致的。也许这会引导我走向正确的方向。谢谢。 【参考方案1】:

如 cmets 中所述,您需要实际修复内部链接,以便在尝试实施重定向之前始终链接到整个网站的规范 URL。

您看到的“报告的问题”大概是通过抓取您的网站发现的。

据我所知,我的内部链接是一致的。

很遗憾没有……

<!--begin footer_details -->
<ul class="footer_details">
    <li>
        <li> <a href="index.html">Redacted Photography</a>

(忽略不正确嵌套的 li 元素 - 这不是有效的 HTML。)

您在每一页的页脚都有一个指向index.html 的相对链接。这应该是相对于根的 URL(单斜杠):

<a href="/">Redacted Photopgraphy</a>

或者,一个绝对 URL(包括方案 + 规范主机名)。例如:

<a href="https://www.example.com/">Redacted Photopgraphy</a>

注意主机名后面的斜杠。

这两个是一样的。 (如果主机名在到达您的站点之前被正确规范化。它似乎是 - 您有 HTTP 到 HTTPS 和非 www 到 www 的重定向。)

<!--begin logo -->            
<a href="https://www.example.com" id="logo"><img src="lib/images/cropped-DroneworxLogo_small.png" ></a>
                        <!--end logo -->
                        
<!--begin nav -->
<ul id="nav">
    <li>
        <a href="https://www.example.com"><i class="icon-home"></i><br>Home</a>

您在每个页面上都有 3 个链接(上面的两个和页脚中的一个 - 版权链接)链接到方案 + 主机名,但 没有尾部斜杠。

严格来说,“正确”的 URL 包括主机名后面的斜杠。

用户代理(即浏览器)将更正此问题并始终附加尾部斜杠,但您应该保持一致并链接到 href="https://www.example.com/" - 带有尾部斜杠。 (或者如上所述使用href="/"。)

您的 XML 站点地图已经正确链接到规范的绝对 URL(带有尾部斜杠):&lt;loc&gt;https://www.example.com/&lt;/loc&gt;

正是这种不一致导致SEO工具同时报告https://www.example.com/(斜线)https://www.example.com(否削减)。尽管这不是真正的 SEO 问题,因为用户代理将始终附加尾部斜杠以形成有效的 URL,如上所述。请参阅 my answer 到 Webmasters Stack 上的以下问题,以获取有关主机名后面的斜杠的更多信息:Is trailing slash automagically added on click of home page URL in browser?

请注意,紧跟在主机名后面的斜杠(位于 URL 路径的开头)与位于 URL 路径末尾的斜杠不同。


重定向到规范

一旦您更正了上述内容,您就可以实施重定向以更正任何已编入索引的 URL(或来自外部第三方的反向链接)。

您可以在此处实现的唯一重定向是从/index.html/(删除index.html)。您不能重定向以在主机名后附加斜杠(这是 相同的 URL)。

(您的 mod_rewrite 指令 删除 URL 路径末尾的斜杠 - 这完全不同。您的网站对此没有问题,但此重定向不会造成任何伤害。 )

要删除index.html,您可以在.htaccess 文件的顶部添加以下规则,您现有的重定向之前(以及在RewriteEngine 指令之后):

RewriteRule ^index\.html$ https://www.example.com/ [R=301,L]

注意:首先使用 302(临时)重定向进行测试,以避免潜在的缓存问题。

这确实假设您没有使用前端控制器模式(并将请求重写为/index.html)。看起来不像 - 您的网站看起来像一个完全静态的 HTML 网站?

使用 site: 搜索在 Google 中快速检查不会显示 index.html 已被编入索引。因此,目前这不太可能导致您出现 SEO 问题。

【讨论】:

以上是关于如何删除影响我的 SEO 的重复网址的主要内容,如果未能解决你的问题,请参考以下文章

如何通过php查询使URL友好SEO [重复]

SEO 和重复 URL

如何删除具有区分大小写名称的重复目录?

如何删除商店extjs中的重复值

.htaccess - 如何删除部分网址?

如何从 hreflang 中删除 TYPO3 9 SEO 扩展中的区域