单页网站,SEO和社交媒体共享按钮

时间:2013-11-20 10:21:13

标签: facebook .htaccess seo single-page-application sammy.js

我有一个单页网站,用SammyJS构建为js框架,PHP用于后端,所以当我达到搜索引擎优化的点时,我读到了谷歌Ajax抓取工具,所以我做了以下内容: 1.我将以下2行添加到我的htacess文件中。

#RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
#RewriteRule ^$ /seo/index/ [R=301,L] 

2。我创建了一个新的控制器(seo),它只显示索引所需的数据(HTML)而没有任何CSS或js。

因此,如果网址包含_escaped_fragment_,则网络服务器会将其重定向到seo控制器。 当我使用Facebook共享时,此解决方案工作正常,但在gplus,link-in和twitter之间无效。 另外,当我测试google-bot如何看到我的网站时,google-bot会看到301重定向页面。

由此,我想要一些没有重定向的东西,这需要sammyJS在没有哈希的情况下工作,我无法使它工作。

我的问题是如何让没有#的sammy js作品!或#,考虑所有浏览器都不支持推送状态。

关于这个案子的任何想法。

谢谢,

1 个答案:

答案 0 :(得分:0)

经过一些研究后,我发现这种方式可以通过单页面应用来处理seo和社交媒体,

由于我使用Yii框架作为后端,在主布局文件中我得到了查询字符串的参数,所以如果url包含“_escaped_fragment_”,我将获取此变量及其值并直接得到结果包括sammyJS路由器文件。

所以在布局文件的顶部:

<?php
if(isset($_GET['_escaped_fragment_'])){
        Return the data you want using PHP only don't relay on js,
        from here you need to provide a full html page with all data.
}else{
       include your sammy js routers file.. normal case 
}
?>

并且您也不需要从htaccess文件进行任何重定向。

谢谢,