有一个网站仅用于响应ajax请求 这是另一个网站上的代码
$.ajax({
dataType: 'jsonp',
url : 'http://www.somedomain.com/getdata',
data: 'parametr=value',
jsonp: 'js_callback',
success: function() {
// Do your stuffs on
alert("Successfully requested cross domain with jquery ajax");
}
});
somedomain.com上的phpcode:
function do_something() {
$data = array();
$data = getuserDataBYID($_GET['userid']);
echo $_GET['js_callback']."(".json_encode($data).");";
}
这会影响somedomain.com的alexa排名吗?
答案 0 :(得分:1)
Alexa是一项分析服务。在处理AJAX时,您真正想知道的是AJAX如何影响SEO(搜索引擎优化)。据我所知,Alexa的工具不一定知道你的AJAX调用以什么方式隐藏来自抓取工具的数据或者数据是什么。爬虫一般不会看到javascript的效果(如ajax调用),但只能看到页面源。要查看像SEO爬虫这样的页面,您可以右键单击页面并选择“查看源”。如果网站的所有内容都是由ajax提供的,那么该网页对于网络抓取工具(例如Google)来说几乎是空白的。在这种情况下,Alexa应该警告你,你基本上没有内容。你的SEO分数肯定会很糟糕。如果您的大部分内容都是由服务器在页面加载时提供的,那么最佳做法是仅通过ajax加载对SEO分数不重要的内容。如果使用ajax加载重要内容,则需要将抓取工具路由到网页的html快照,以便他们准确查看您网站的内容。
您可以手动创建网站的html快照,也可以使用服务器上运行的PhantomJS无头浏览器创建。 PhantomJS很不错,因为它可以抓取网站并捕获javascript输出。您可以安排它每天抓取网站并保存每个页面生成的HTML。
以下是将抓取工具路由到快照的Google指南:https://developers.google.com/webmasters/ajax-crawling/docs/getting-started