0

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

eZ Publish 附带一个包含 schema.xml 的扩展名 (eZFind),我无需任何配置(除了定义 Solr 服务器、用户、密码等)就可以直接使用它。

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

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

有没有人有这方面的经验或对 Solr 设置有任何建议?

4

2 回答 2

3

您需要使用 Solr 的多核特性(请参阅此处),这样您将只有一个 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 扩展,那么您应该查看此页面,该页面告诉您如何将捆绑的 Solr 安装移动到 eZ Publish 之外。然后,使用 Magenta 配置文件添加一个新内核。

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

于 2012-11-29T08:52:36.423 回答
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配置

于 2012-11-29T08:52:06.257 回答