php - 如何确定搜索查询转发用户到我的网站?

标签 php javascript ruby search-engine

问候,

我正在尝试确定使用什么查询将人们转发到我的网站。如果有人能告诉我应该研究什么 api 调用,我将不胜感激。我确信这可以通过 javascript 以及 ruby​​ 和 php 实现,所以任何技术都可以。

只是为了学习,我不介意知道我应该为所有三个使用什么:)

最佳答案

在使用搜索引擎超过 5 年之后,我可以告诉您,没有标准的方法来检索查询值。

正如其他答案已经告诉您的那样,第一步是检查 HTTP_REFERER header 。假设你使用的是 Rails,你可以从请求中获取

request.referrer

否则需要通过其他方式从请求头中提取。

一旦您有了推荐人,您就会面临 3 种主要可能性:

  1. 变量为空。对不起,你不能什么都不做
  2. 变量不为空,它是一个搜索引擎
  3. 变量不为空,不是搜索引擎

第一个选项很简单。你想知道的是推荐人是否是搜索引擎。如果是这样,那么您需要提取查询。

最常用的方法是使用 list 。 list 通常是键/值列表,其中键是搜索引擎域,值是包含查询值的查询字符串参数的名称。

google.com,q
yahoo.com,p
...

这与 Google Analytics 使用的方法相同。来自ga.js文件

g.T=l("daum:q,eniro:search_word,naver:query,images.google:q,google:q,yahoo:p,msn:q,bing:q,aol:query,aol:encquery,lycos:query,ask:q,altavista:q,netscape:query,cnn:query,about:terms,mamma:query,alltheweb:q,voila:rdata,virgilio:qs,live:q,baidu:wd,alice:qs,yandex:text,najdi:q,aol:q,mama:query,seznam:q,search:q,wp:szukaj,onet:qt,szukacz:q,yam:k,pchome:q,kvasir:q,sesam:q,ozu:q,terra:query,mynet:q,ekolay:q,rambler:words");

第一个主机匹配键和值,先赢。

关于php - 如何确定搜索查询转发用户到我的网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2257192/

相关文章:

ruby-on-rails - 需要 Rails bundle 安装密码

javascript - 不显示 PHP 表单操作页面

php - 执行sql文件时出错(ERROR 1114 mysql表已满)

javascript - 我不明白为什么 "this"关键字没有像我预期的那样工作

javascript - 在谷歌图表的AreaChart中添加副标题?

javascript - 如何在javascript中获取redis中的所有键和值?

ruby-on-rails - 转换 Rails ActiveRecord 时间戳的时区

ruby-on-rails - Controller Action 中未定义的方法新

javascript - 从 Javascript 脚本中执行 PHP 函数

php - CodeIgniter - 无法加载请求的类