2

我一直在寻找一些可用于共享主机的开源搜索引擎软件/库,我确信 Lucene、Lucene.Net、Sphinx 或 Xapian 等服务不能用于共享主机,因为它们需要一些安装或重启。

查看维基百科文章(见这里)我发现了这些开源搜索引擎解决方案。

Apache Solr
BaseX
Clusterpoint Server (freeware licence for a single-server)
DataparkSearch
ElasticSearch  (Apache License, Version 2.0)
Ferret
ht://Dig
Hyper Estraier
KinoSearch
Lemur/Indri
Lucene
mnoGoSearch
Sphinx
Swish-e
Xapian

正如我搜索的那样,它们都不能用于共享主机。我想当我在共享主机上时,我必须坚持使用 MySQL 全文搜索。

因此,对于共享托管的搜索引擎替代方案的任何建议。

4

4 回答 4

2

http://www.google.com/enterprise/search/products_gss.html

http://www.bing.com/community/site_blogs/b/developer/archive/2010/03/22/add-a-bing-search-box-to-your-site-in-3-easy-steps。 aspx

http://developer.yahoo.com/search/boss/boss_api_guide/v2_univer_api_args.html#v2_univer_api_query

你试过看这些吗?它们适用于已被搜索引擎正确索引的公共网站。

另一种选择是编写自己的搜索引擎,尽管这可能不如共享托管计划中的三大引擎之一处理的那么快。

于 2012-07-29T06:05:41.627 回答
2

只要您的主机支持 PHP 5+,您就可以使用 Zend Framework 的 Lucene 实现。它支持 Lucene 索引格式版本 1.4 - 2.3。由于索引直接写入文件系统,它应该支持任何允许您访问文件系统的主机(大多数都这样做)。

文档: http: //framework.zend.com/manual/en/zend.search.lucene.html

话虽如此,您也可以简单地使用 MySQL 全文搜索。它并非没有限制,也不是最具可扩展性的解决方案,但是您所谈论的共享主机通常不是最具可扩展性的环境,因此鉴于此,我不会太担心。

PostgreSQL 也是一个选项,如果您使用 Heroku 等托管服务提供商(您可以在 Heroku 上使用 PHP),建议您使用 PostgreSQL。

此外,根据您的搜索需求,您可以简单地阅读倒排索引并推出您自己的简单实现。

最后,我想提一下,您实际上并没有列出您感兴趣的搜索功能。

  • 术语突出显示
  • 词条提升
  • 布尔查询
  • 自定义分析器/标记器
  • 分面浏览
  • ETC...

如果不列出您想要的功能,人们总是很难做出准确(且公正)的推荐。话虽如此,您可能会对基础知识感到满意。

于 2012-07-30T02:14:59.040 回答
1

ClusterPoint 最近在http://cloud.clusterpoint.com/上推出了托管“云”服务。当您要使用共享主机时,您也可以使用托管数据库。

于 2015-03-30T10:51:21.853 回答
0

另一种选择是 Findberry ( http://www.findberry.com )。您也可以控制自动索引的频率并手动调用索引。我不知道它是否适合您的情况,但可能值得一试。

于 2012-08-02T09:04:06.643 回答