【问题标题】:Does rewriting a URL help a search engine find the page?重写 URL 是否有助于搜索引擎找到该页面?
【发布时间】:2010-10-27 10:37:33
【问题描述】:

我的 URL 看起来像“/pages.php?page=pageName”,因为我使用数据库来提供页面内容。将 URL 重写为“/pageName”之类的内容是否有助于搜索引擎找到页面?如果是这样,我该如何重写它们?

【问题讨论】:

    标签: php url seo search-engine rewrite


    【解决方案1】:

    这并不能帮助搜索引擎更轻松地找到页面(事实上,如果实施不当,可能会使搜索引擎更难抓取您的网站),但如果处理得当,它会使您的网页在相关方面获得更好的排名关键词

    对于 PHP,请查看用于 Apache 的 mod_rewrite

    我不是正则表达式专家,但它使用模式匹配规则来执行重写,网上会有很多关于 mod_rewrite 的文档和教程

    【讨论】:

      【解决方案2】:

      Google 的 SEO Guide 在“改进 URL 的结构”部分下提到了一些有关 URL 的提示。

      【讨论】:

        【解决方案3】:

        也许更好的问题是“重写 URL 是否有助于用户在搜索引擎中找到页面?”。答案是“是”。例如,假设您的页面内容讨论了海豚。 Google 将“海豚”这个搜索词的权重放在:

        /Dolphins.php
        

        /pages.php?page=1323
        

        您会发现这是大多数现代网站正在做的事情(包括 stackoverflow)。

        【讨论】:

        • 更好:example.com/dolphins 用户不需要记住文件类型。
        • 用户不记得文件类型或网址。他们点击链接。如果您最后没有扩展名,例如example.com/dolphins,有可能您的入站链接的某些部分将指向 example.com/dolphins/,而其他部分将指向 example.com/dolphins/index.html 等。这会稀释您从这些入站获得的谷歌果汁链接。
        • @Lance 我同意你们的看法。您可以使用链接 rel='cannonical' 解决两个版本的问题
        【解决方案4】:

        它可能不会帮助爬虫找到页面,但它可能会对如何对它们进行排名产生积极影响,因为更好的 URI 通常会获得更好的排名(当然,在其他条件相同的情况下)。将它们永久保存也很好。

        Cool URIs don't change

        关于您如何在 Apache 世界中拥有 mod_rewrite 和在 IIS 世界中拥有一些 other options

        示例(Apache 的语法):

        RewriteEngine On
        RewriteRule ^(.*)$ pages.php?page=$1
        

        这会将 URI 中域名之后的所有内容(关于尾部斜杠有一个警告)作为页面参数传递给 pages.php。

        这是

        http://yourdomain.com/bears 
        

        将返回由

        提供的内容
        http://yourdomain.com/pages.php?page=bears
        

        【讨论】:

        • 您不需要将请求的 URI 路径重写为查询。您可以使用 $_SERVER['REQUEST_URI'] 变量访问请求的 URI 路径和查询。
        • 情况并非总是如此,尽管它可以在 PHP 和 Apache 设置中工作。鉴于添加变量是免费的,因此无需依赖在某些其他组合中可能不起作用的功能。
        【解决方案5】:

        它不会帮助搜索引擎更容易地找到它们。为确保搜索引擎找到您的网页,您可以做的最重要的两件事是:

        1. 创建一个sitemap,在你的robots.txt中引用它,然后用Google WebMaster tools注册它

        2. 确保您确实有指向您网站上所有页面的可抓取的非 JavaScript 链接(最好是文本链接)。

        【讨论】:

          【解决方案6】:

          您可以在站点根目录中创建 .htaccess 文件并将其添加到文件中:

          Options +FollowSymlinks
          RewriteEngine On
          RewriteRule ^/pages/(.*) pages.php?page=$1
          

          【讨论】:

            【解决方案7】:

            搜索引擎会喜欢您的网页更多。如果有一个动态的文件结尾和一个查询字符串,大多数搜索引擎认为它是一个动态页面,它很快就会改变,因此不会像静态页面那样排名。

            然后你已经完成了重写,你可以很容易地在你的 PHP 中解析它并用 php 决定你的 url 结构。

            【讨论】:

              【解决方案8】:

              从谷歌查看this blog entry

              特别是这句话。

              一个建议是避免重新格式化动态 URL 使其看起来是静态的

              【讨论】:

                【解决方案9】:

                想强调页面扩展的必要性,例如.html 以及 url 中的斜线被解释为站点“树形图”中的虚拟目录路径。

                Keltex 在 category.html 等路径中所说的“权重”比 /category/subcategory.html 更多

                无论如何,必须实施友好的网址以及站点地图。所有这些与基本的 SEO 标题相结合,正确的标题会给你一个很好的结果。

                【讨论】:

                  【解决方案10】:

                  出于 SEO 目的,最好在 URL 中包含您的关键字。但是,如果它已经是已发布的页面,请确保在进行更改之前设置从现有 URL 到新 URL 的重定向。没有人喜欢broken link

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 1970-01-01
                    • 2011-02-16
                    • 2016-04-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2010-10-31
                    • 2014-12-09
                    • 2011-08-13
                    相关资源
                    最近更新 更多