Google自定义搜索和多租户多域Web应用程序

时间:2011-10-24 22:10:26

标签: multi-tenant google-custom-search

我正在开发一个在多个域上运行的应用程序。

我想在所有这些上使用Google自定义搜索。但GCS要求提供网站域名进行搜索。

有没有办法动态指定域名?从理论上讲,我可以拥有数千个域名,我不喜欢手动添加所有域名的想法。

1 个答案:

答案 0 :(得分:0)

Google提供的服务可以Create a Custom Search Engine on the fly

要使用此功能,您必须在页面上拥有真实链接,而不是JavaScript生成的链接 - 这样远程服务就可以解析您的页面。

<form name="cse" id="searchbox_demo" action="http://www.google.com/cse">
  <input type="hidden" name="cref" value="" />
  <input type="hidden" name="ie" value="utf-8" />
  <input type="hidden" name="hl" value="" />
  <input name="q" type="text" size="40" />
  <input type="submit" name="sa" value="Search" />
</form>
<script type="text/javascript" src="http://www.google.co.uk/cse/tools/onthefly?form=searchbox_demo&lang="></script>
<a href="http://www.stackoverflow.com">stackoverflow</a><br />
<a href="http://serverfault.com/">serverfault</a><br />
<a href="http://superuser.com/">superuser</a>

因此,您需要使用某种机制来动态创建站点列表页面(例如Ruby,Python,PHP,ASP,JSP等)。根据我的有限实验,似乎即时服务会根据请求页面积极缓存您创建自定义搜索引擎的请求(我不确定缓存持续多长时间)。因此,您似乎无法非常快速地从列表中添加和删除搜索网站。作为解决方法,您可以更改为每次更改请求自定义搜索框的网址。