【问题标题】:SEO friendly urls to avoid duplicate content搜索引擎优化友好的网址,以避免重复的内容
【发布时间】:2017-01-02 21:55:15
【问题描述】:

我现在几乎完成了我的 .htaccess 文件,这样我的网址就可以正常工作了。不过我有一个简单的问题:

我有一个看起来像这样的重写:

    RewriteRule ^fishing/([^/]*)/?$ region.php?region=$1 [L]  

如果我输入fishing/fife/,它会加载region.php 文件。然而,我不知道也不期望的是,如果我输入 region.php?region=fife 那么这也有效。

我相信这会给我带来重复的内容,并且我的 SEO 评级会受到影响。我该怎么做才能让如果我输入 region.php?region=fife 它会自动更改为 fishing/fife/ ????

【问题讨论】:

    标签: apache mod-rewrite url-rewriting seo


    【解决方案1】:

    更好的解决方案是canonical URLs。这会告诉搜索引擎哪个 URL 是您要在搜索结果中显示的 URL,并且到达该页面的所有其他 URL 都是它的副本,并将其计入该 [页面的排名(包括传入链接)。

    您应该只是希望搜索引擎找不到其他页面。如果他们这样做,那就是重复的内容,显然是你应该避免的。

    【讨论】:

      【解决方案2】:

      只要您不链接到不可重写 URL 结构(即 region.php?region=fife),那么网络爬虫就无法发现该 URL,您也不会获得重复的内容。

      如果一个人输入该 URL 并获得结果,就 SEO 而言,这是可以的。

      所以请确保只在您的应用中使用漂亮的 URL 结构。

      【讨论】:

      • 好的,但是这里有一个 'RewriteRule ^fishing/$fishing.html [L]',fishing.html 仍然有效。这个爬虫就能看到?不对吗?
      • 从技术上讲,爬虫有可能找到该物理fishing.html 页面。如果它在一个没有 index.html 文件的目录中并且您允许目录浏览,那么爬虫将能够获取该目录中所有物理文件的列表并逐个访问它们。但是,如果需要,您可以使用 robots.txt 文件来禁止特定文件或每个文件的扩展名。例如,如果您永远不会在您的 url 结构中使用扩展名,您可以将 Disallow: /*.html$ 添加到您的 robots.txt 文件中,以防止任何 .html 文件被抓取。 .php 等也一样。
      • 听起来正是我需要的解决方案。我认为您只需创建一个名为 robots.txt 的文件并将其放在您网站的根目录中?
      • 是的。如果你注册google.com/webmasters,他们有一个很好的 robots.txt 生成器,或者你可以在网上找到类似的生成器来帮助你。
      • 不错。感谢您的所有帮助
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      相关资源
      最近更新 更多