在多个CMS上使用Solr

时间:2012-11-28 09:23:36

标签: magento solr ezpublish

我在两个不同的服务器和一个Solr服务器上有一个eZ Publish和一个Magento站点。 Solr服务器现在用作eZ Publish的搜索引擎,但我也想在Magento上使用相同的Solr服务器。

eZ Publish带有一个扩展名(eZFind),其中包含schema.xml,我直接使用它而没有任何配置(除了定义Solr服务器,用户,密码等)。

Magento附带了schema.xml和solrconfig.xml,根据文档需要将其复制到Solr-server。

我有点害怕这样做,因为我不想在eZ Publish上打破搜索。

有没有人对此有任何经验或对Solr设置有任何建议?

2 个答案:

答案 0 :(得分:3)

您需要使用Solr的多核功能(请参阅there),这样您将只有一个Solr实例,至少提供2个内核(至少)。 那是什么意思 ?每个核心将由至少2个文件(schema.xmlsolrconfig.xml)定义,这些文件将位于Solr安装中的专用文件夹中。然后核心必须在名为solr.xml的文件中注册,在您的情况下,该文件可能如下所示:

<?xml version="1.0" encoding="UTF-8" ?>
<solr persistent="true" sharedLib="lib">
    <cores adminPath="/admin/cores">
         <core name="ezpublish" instanceDir="ezpublish" />
         <core name="magento" instanceDir="magento" />
    </cores>
</solr>

如果您当前的solr安装仍然 eZ Find扩展中,那么您应该看看a this page,它告诉您如何在eZ Publish之外移动捆绑的Solr安装。然后,使用Magenta配置文件添加新核心。

根据您使用的Solr版本,我建议您自己安装Solr(不带eZ Find的版本)并在其上应用eZ Publish配置。

答案 1 :(得分:1)

您可以使用solr的多核功能,该功能允许您托管多个索引,每个索引都有自己的架构,每个索引都可以使用自己的URL(http://localhost:8983/solr/ezpublish/http://localhost:8983/solr/magento)进行访问。

eZPublish有一个如何执行此操作的教程:http://doc.ez.no/Extensions/eZ-Publish-extensions/eZ-Find/eZ-Find-2.7/Advanced-Configuration/Using-multi-core-features

你应该做的就是复制你的magento配置