如何配置 Magento Enterprise 使用 Solr 作为主要搜索引擎?

2024-04-17

我尝试寻找文档,但它非常稀疏。我编写了以下指南,希望它可以帮助人们节省 2-3 个小时的安装、设置和配置时间。
与 MySQL 全文搜索标准设置相比,使用 Solr 带来的性能提升非常惊人。在您的 Magento 安装中让它工作绝对值得花时间。


Magento - Solr 安装和配置

  1. Make sure the Java JDK is installed:
    1. sudo add-apt-repository ppa:sun-java-community-team/sun-java6
    2. sudo apt-get 更新
    3. sudo apt-get install sun-java6-jre sun-java6-jdk

  2. 安装和配置 Tomcat:

    • 安装:
      sudo apt-get install tomcat6 tomcat6-admin tomcat6-common tomcat6-user
    • 配置:
      vi /etc/tomcat6/tomcat-users.xml
    • 将以下角色和用户添加到配置中。

      <role rolename="admin"/>
      <role rolename="manager"/>
      <user username="tomcat" password="password" roles="admin,manager"/>
      
    • 重新启动服务器: /etc/init.d/tomcat6 重新启动

      如果一切顺利,请转到http://主机名:8080 http://hostname:8080

  3. 安装Solr:

    • 在这里检查最新的发行版..http://apache.rediris.es/lucene/solr/ http://apache.rediris.es/lucene/solr/
    • 下载版本http://apache.rediris.es/lucene/solr/3.3.0/apache-solr-3.3.0.zip http://apache.rediris.es/lucene/solr/3.3.0/apache-solr-3.3.0.zip
    • 安装和配置

      1. 解压 apache-solr-3.3.0.zip
      2. mkdir /usr/share/tomcat6/webapps
      3. cp apache-solr-3.3.0/dist/apache-solr-3.3.0.war /usr/share/tomcat6/webapps/solr.war
      4. cp -r apache-solr-3.3.0/example/solr /usr/share/tomcat6/solr
      5. vi /etc/tomcat6/Catalina/localhost/solr.xml

        
        
        <Context docBase="/usr/share/tomcat6/webapps/solr.war" debug="0" 
        privileged="true" allowLinking="true" crossContext="true">
        <Environment name="solr/home" type="java.lang.String" 
        value="/usr/share/tomcat6/solr" override="true" />
        </Context>
          
      6. chown -r tomcat6.tomcat6 /var/lib/tomcat6
      7. /etc/init.d/tomcat6 重新启动
    • 您应该在 Tomcat 管理/管理器页面上看到 Solr 访问权限(http://主机名:8080/manager/html http://hostname:8080/manager/html)

  4. 配置 Magento 使用 Solr:

    1. 将原始 Solr conf 目录替换为 Magento conf 文件。诀窍是从 Magento 复制该目录,然后替换 Solr 中的目录。就是这样!

      • 在 Magento 中,该文件夹位于:[magento-instance-root]/lib/Apache/Solr/conf。
      • 在 Solr 中,该文件夹位于 [Solr-instance-root]/example/solr/conf 中。

    2. 在 Magento 中配置 Solr: 在管理中,转到系统 -> 配置 -> 目录 -> 目录搜索

故障排除:

确保所有配置文件都属于tomcat6:tomcat6
chown -r tomcat6.tomcat6 ...

  • /var/lib/tomcat6/conf/Catalina/localhost
  • /usr/share/tomcat6/solr/conf
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何配置 Magento Enterprise 使用 Solr 作为主要搜索引擎? 的相关文章

随机推荐

  • 如何使用 API 创建 GitHub Gist?

    通过查看 GitHub Gist API 我了解到可以为匿名用户创建 Gist 而无需任何 API 密钥 身份验证 是这样吗 我找不到以下问题的答案 创建时是否有任何限制 要点数量 等 有没有任何示例可以让我从表单文本输入字段发布代码来创建
  • pandas.to_datetime 时间字符串格式不一致

    我正在尝试转换 a 的索引pandas DataFrame从字符串格式到日期时间索引 使用pandas to datetime 导入熊猫 In 1 import pandas as pd In 2 pd version Out 2 0 10
  • size_t 是字长吗?

    Is size t编译代码的机器的字长 用 g 解析 我的编译器视图size t as an long unsigned int 编译器内部是否选择大小size t or is size t实际上是在某些预处理器宏中的 typedefstd
  • 如何解析此 Flickr 响应?

    我从 Flickr 的 api 站点中的示例响应中得到了这一点 jsonFlickrApi method content flickr test echo format content json api key content 8038f7
  • Play框架2.0.1不断尝试演化出错误的数据库类型

    我正在开发部署在 openshift DIY 应用程序上的 play 2 0 1 应用程序 我在数据库方面遇到了麻烦 因为游戏一直试图发展错误的数据库 我有一个 mysql 数据库 并且 play 创建一个 H2 数据库演化脚本 这是脚本
  • 将 uri 保存到共享首选项并使用媒体播放器播放

    这是我用来将 Uri 的字符串表示形式保存到 SharedPreferences 的代码 public void onActivityResult int requestCode int resultCode Intent data sup
  • Java 8 中使用了哪个 JAXB 版本?

    JAXB Java Architecture for XML Binding 已作为 Maven 工件发布 尽管它在 Java 8 以及具有选项的 Java 9 10 之前与 JRE 捆绑在一起 我的问题是 Maven Central 上的
  • 计算时间长

    这是我上一个问题的链接 它引导我找到了这个问题 C 嵌套 foreach 循环优化 https stackoverflow com questions 7729231 c nested foreach loop optimization 计
  • 为什么服务器控件在放置在内容标记内时会带有下划线?

    我有一个网络内容表单 其中包含Div以及各种服务器控件 例如DropDownList 当我运行该应用程序时 它运行良好 没有任何错误 但当我查看 HTML 源代码时 服务器控件带有红色下划线 将鼠标移过来时 说 DropDownList 会
  • Visual C# 2010 Express:为新类指定默认访问修饰符?

    每当我使用 Visual Studio 2010 Express C 创建新类时 它都会创建不带访问修饰符的新类 十分之九我希望我的新课程公开 如何让 Visual Studio 默认创建带有 public 修饰符的空类模板 诀窍是创建一个
  • 删除 numpy 数组的重复行[重复]

    这个问题在这里已经有答案了 如何删除二维的重复行numpy array data np array 1 8 3 3 4 1 8 9 9 4 1 8 3 3 4 答案应该如下 ans array 1 8 3 3 4 1 8 9 9 4 如果有
  • HSQLDB服务器模式用户名/密码

    如果我使用 Java 代码在服务器模式下启动 HSQLDB 则服务器启动不会出现任何问题 但是 当我尝试通过 Java 代码或通过 HSQLDB DatabaseManagerSwing 连接到相同的数据库时 我无法连接 我在仅内存模式下使
  • 通过API服务端点消费来自Kafka主题的消息

    目前 我有一个 API 服务端点 用 netcore6 C 编写 它将接受消息对象并将其保存到数据库 然后将该消息发布到 kafka topic 2 如何利用我的 API 服务端点始终监听 观看并连接到 kafka topic 1 一旦新消
  • 为什么`从. importviews`可以解决Flask中的循环导入吗? [复制]

    这个问题在这里已经有答案了 我从中学习更大的应用 http flask pocoo org docs 0 10 patterns packages 在这个文档中 它说 所有视图函数 顶部带有route 装饰器的函数 都必须导入到init p
  • NAudio - 更改缓冲麦克风音频的音高并发送到虚拟音频线

    我决定尝试使用 NAudio 和虚拟音频线创建一个与 Discord 或类似软件 一起使用的音板 我能够将音频从麦克风 注入 到音频电缆 这样我就可以通过选择虚拟音频电缆作为 Discord 中的输入设备来播放声音文件和麦克风音频到 Dis
  • 在类中初始化 static struct tm

    我想使用 tm 结构作为类中的静态变量 花了一整天的时间阅读和尝试 但它仍然无法工作 如果有人能指出我做错了什么 我将不胜感激 在我的课堂上 在公共下 我将其声明为 static struct tm dataTime 在main cpp中
  • ObservableCollection CollectionChanged 事件

    我有一个可观察的集合 并且在其上连接了一个 collectionChanged 事件 我将其项目绑定到用户界面中的列表框 当用户从列表框中删除 UI 中的某些项目时 CollectioChanged 会正确触发 但是 我需要知道已删除项目的
  • Android:使用 Admob 的 Consent SDK 获取用户位置

    我对 AdMob 的新功能有疑问 同意 SDK https developers google com admob android eu consent consent sdk the 整合指南 https developers googl
  • 相机框架相对于基准点的世界坐标

    我正在尝试确定世界坐标中的相机位置 相对于基于场景中找到的基准标记的基准位置 我确定 viewMatrix 的方法如下所述 确定相机姿势 https stackoverflow com questions 28335954 determin
  • 如何配置 Magento Enterprise 使用 Solr 作为主要搜索引擎?

    我尝试寻找文档 但它非常稀疏 我编写了以下指南 希望它可以帮助人们节省 2 3 个小时的安装 设置和配置时间 与 MySQL 全文搜索标准设置相比 使用 Solr 带来的性能提升非常惊人 在您的 Magento 安装中让它工作绝对值得花时间