限制对ajax调用的访问并阻止爬虫和蜘蛛

时间:2011-06-09 15:22:02

标签: php jquery ajax

想知道如何为ajax调用编写服务器文件?,

示例:

级车,有2个功能

  1. 回复所有品牌

    返回$ database-> Listall('brands','cardb'); 我用api.php调用它?mod = list

  2. 回复品牌所有车型 return $ database-> Listall('cars','cardb',“WHERE brand = $ brand”); 我用api.php来称呼它?mod = list& brand = kia
  3. 问题是谷歌在其搜索目录中列出了这些api链接,+用户也可以在那里访问此页面(不是通过ajax调用) 那我怎么能阻止这个?

4 个答案:

答案 0 :(得分:1)

  1. 使用robots.txt阻止搜索引擎蜘蛛。有些机器人会忽略这一点,但这是一种轻松的方法,可以将其从搜索引擎中删除。
  2. 如果用户可以在浏览器中访问它,他们可以直接访问它。有一些方法可以阻止它,但我怀疑它是否可靠。

答案 1 :(得分:1)

AJAX只是一种请求页面的方法,该页面将返回简化的(xml?)内容。

阻止Google
在robots.txt上使用此功能,并从ajax文件夹中提供ajax请求。

User-agent: *
Disallow: /ajax-folder/

对ajax请求使用_POST并发送“秘密”
让您的AJAX请求沿着“秘密”变量发送,并且对于没有该变量的请求,只需将它们重定向到另一个页面。

答案 2 :(得分:0)

在robots.txt

中重新启用Google对api.php的访问权限

答案 3 :(得分:0)

在生成AJAX调用时只需使用令牌即可。如果令牌不在那里,请不要提供。