代码之家  ›  专栏  ›  技术社区  ›  Kamarey

IFrame和SEO问题

  •  4
  • Kamarey  · 技术社区  · 14 年前

    我有一些网站。有些页面使用iframes呈现,以显示页面内容,而不是普通页面。原因是,在我的内容前后,我会显示一些其他网站的页眉和页脚(一些徽标+基本html),我无法更改,并使用iframes来防止css问题(当页眉和页脚的css将覆盖我页面中的css时)。问题是搜索引擎优化:搜索引擎不喜欢iframe。我怎样才能解决这个问题?

    例子:

    此外还有www.othersite.com,其中包含:

    • [标题]
    • IFrame[我的内容]
    • [页脚]

    除页眉和页脚html外,我可以完全访问www.othersite.com内容。

    2 回复  |  直到 14 年前
        1
  •  2
  •   rtpHarry    14 年前

    这是一个相当糟糕的情况。

    这并不是说搜索引擎不能使用iframe,他们可以,但他们索引了iframe中的内容,在你的例子中似乎是www.site1.com。

    这个想法

    将url重写放到iframe站点(othersite.com)上,这样它将服务于site1.com中的所有页面。使用url重写而不是url重定向,以便页面看起来来自othersite.com。

    在othersite.com上添加一个站点地图,这样Google就可以找到所有这些页面。

    决定

    使用robots.txt阻止对site1.com进行索引

    这将意味着任何谷歌果汁你已经积累,如网页排名或老化的域名等将丢失。如果这是一项依赖于搜索引擎的业务,你应该认真考虑一下。

    我从来没有尝试过这种方法,我只是想解决你的问题。

    这不是一个很好的解决方案,也不是你应该不遗余力地去做的事情(如果有人在读这个)。

    最好的解决办法是把你的iframe扔掉。如果您无法控制页眉和页脚框架内的html,那么还有比使用iframe更好的解决方案。

    例如,您可以使用HtmlAgilityPack来解析这些头文件中应该包含的html,并使用更改的id将其输出到模板中,以便可以包含css。

        2
  •  -2
  •   Petr Peller    14 年前

    可以使用元标记和标题标记帮助搜索引擎识别页面内容。

    <meta name="description" content="Longer description of the content in the iframe">
    <meta name="keywords" content="keyword1,keyword2,keyword3,foo,boo">
    <title>Title of the page in the iframe</title>
    

    也可以在iframe标记中插入替代内容。这将由搜索引擎解析并仅在iframe被禁用时呈现。

    <iframe src="http://www.site1.com">Alternative content for SE and disabled iframes</iframe>
    

    #header div.foo {/* some CSS here */}
    #content div.boo {/* some CSS here */}
    #footer div.moo {/* some CSS here */}