我们正在使用Liferay(6.1.20 EE)和Solr搜索引擎。
现在Solr将所有内容编入索引。我们能以某种方式设置Solr(或Liferay)来阻止一个站点被编入索引吗?
这意味着该网站上的所有文章文档都不会编入索引,也不会出现在Solr中。
1)在Index开始之前,是否应该使用Solr配置/架构过滤器完成此操作? 要么 2)是否应该在Liferay Indexer类中自定义(在Hooks或EXT的帮助下)跳过被索引的内容。
感谢您的想法和建议。
此致 克里斯
答案 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版本。