改写
我开发我的网站,让所有页面都通过AJAX动态加载1页上,和一个URL,这样的URL将出现在以下格式:改写
www.website.com/#home
www.website.com/#news
www.website.com/#news-details/news-title-goes-here
我发现后,对我的网页AREN不会出现在搜索引擎中,谷歌机器人不会以这种方式访问我。 那么什么是解决它并转换成URL这种形式最简单的方法:
www.website.com/news/news-title-goes-here
难道只有修改的.htaccess做什么?
我跟着这个链接:
https://developers.google.com/webmasters/ajax-crawling/
转换了所有我的动态页面出现在这样:
www.website.com/#!home
www.website.com/#!news
www.website.com/#!news-details/news-title-goes-here
(!加入哈希后)
然后产生动态的Html快照。 (但是,我只在1个文件html快照中制作了它们。PHP) 所以现在我有2种类型的URL:
丑之一:
www.website.com/html-snapshot.php?_escaped_fragment_=news-details/news-title-goes-here
和漂亮的一个:
www.website.com/#!news-details/news-title-goes-here
我添加了所有漂亮的URL转换成一个网站地图,并提交在Google网站管理员中,并在网站管理员工具“抓取Google”中抓取所有丑陋的内容。
总而言之,Google现在正在看到我所有的ajax页面。
的问题是,谷歌是越来越糊涂。你可能无意中偶然发现了隐形情况。
如果你看一下那些对一个网页(如新闻网站)的动态内容加载其他网站,这些内容最终被链接回另一个内容页(与它自己的URL)。当你介绍英镑/井号到您的网址,谷歌看到,由于在同一页它是在之前的定位点(这是一个URL的传统公认使用散列),并希望看到所有的相同内容的。如果你关注这个散列并加载全新的内容,这会导致Google感到困惑。
如果Google正在访问相同的URL并从AJAX调用中获取不同的内容,并且它不能发现不同的内容实际上来自不同的“页面”,Google可能会将其解释为隐藏并丢弃您的页面来自索引。
这里是另一回事,你可以尝试一下; hashbang网址:https://developers.google.com/webmasters/ajax-crawling/docs/getting-started
和解决方案不重写所有我的代码? – 2014-11-05 14:28:19
你尝试过祈祷吗? 说真的,我认为你处在一个艰难的地方,没有简单的出路。你可以尝试或许键入不同于哈希符号的其他字符,因为这已经建立。它可能有用,但它可能不会。 我一直在与谷歌做搜索引擎优化/在线营销10 - 15年,在数百个各种规模的网站上工作搜索引擎优化。我一次又一次学会了一件事。对于设计/用户体验/好看的好东西通常对搜索引擎优化和搜索引擎不太好。此外,即使谷歌能够解决这个问题,Bing /雅虎也不是那么聪明,他们会驱动20-30%的流量。 – Robert82 2014-11-05 14:55:59
这是一个非常基本的SEO VS coolnes问题。 如果您想保持页面的行为方式,可以并行添加静态版本。
在htacess路线的任何请求返回你的index.php,你可以选择输出基于这样的价值观的内容下面的代码。
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /index.php
而坐着火车(无聊),所以请原谅,如果格式是不完美的,我有我的电话写这篇;)
编辑: 我差点忘了;当使用这种方法时,你会得到这样的网址: $ url = $ _SERVER [“REQUEST_URI”];
如果页面是动态加载的,页面上的内容是否也是动态生成的? – userDEV 2014-11-05 13:48:42
是的,一切都从数据库中带来 – 2014-11-05 13:51:14
您是否尝试过在谷歌站长工具中提交站点地图? http://www.feedthebot.com/dynamicpages.html – userDEV 2014-11-05 13:52:38