使其中一个Liferay社区(称为网站)未在solr中编入索引

时间:2012-08-21 10:05:54

标签: solr indexing liferay

我们正在使用Liferay(6.1.20 EE)和Solr搜索引擎。

现在Solr将所有内容编入索引。我们能以某种方式设置Solr(或Liferay)来阻止一个站点被编入索引吗?

这意味着该网站上的所有文章文档都不会编入索引,也不会出现在Solr中。

1)在Index开始之前,是否应该使用Solr配置/架构过滤器完成此操作? 要么 2)是否应该在Liferay Indexer类中自定义(在Hooks或EXT的帮助下)跳过被索引的内容。

感谢您的想法和建议。

此致 克里斯

1 个答案:

答案 0 :(得分:1)

您可以创建需要安装的solr-web WAR文件的自定义版本,以使Liferay / SOLR集成工作。在WAR文件中,您将找到SolrIndexWriterImpl。这是所有通过的地方,将在SOLR中编入索引。您可以创建自己的此类自定义实现,该实现使用SearchContext参数中的信息(传递给每个方法)来确定是否应对某些内容编制索引。

可以在此处找到solr-web的最新代码:http://svn.liferay.com/repos/public/plugins/trunk/webs/solr-web/

基于这段代码,我还能够创建一个solr-web.war,它可以在更新的SOLR版本上运行,而不是Liferay默认使用的古代1.4.1版本。