gpt4 book ai didi

ruby-on-rails - 在 Rails 开发中使用 solr 和 sunspot

转载 作者:行者123 更新时间:2023-11-28 22:55:46 24 4
gpt4 key购买 nike

我正在尝试在我的 Rails 应用程序中配置 sunspot,但我希望它能与已安装的 solr-tomcat 一起工作,因为我正在使用 vagrant 来管理开发机器。

我已经根据本教程的前两个步骤使用 apt-get 安装了 solr-tomcat:https://www.digitalocean.com/community/tutorials/how-to-install-solr-on-ubuntu-14-04

并且我已将 gem sunspot_rails 添加到 gemfile,还成功运行了 rails generate sunspot_rails:install 并配置了我的 config/sunspot.xml因此:

production:
solr:
hostname: localhost
port: 8080
log_level: WARNING
path: /solr/production

development:
solr:
hostname: localhost
port: 8080
log_level: INFO
pid_dir: '/var/run'
disabled: false

test:
solr:
hostname: localhost
port: 8081
log_level: WARNING
path: /solr/test

由于我使用的是 vagrant,我希望它能够开箱即用,适用于可能加入该项目的任何其他开发人员,这就是我不安装 gem sunspot_solr 的主要原因

我觉得我错过了什么,但我不知道为什么。

当我尝试 rake sunspot:solr:reindex 时,它会抛出 HTTP 状态 404 -/usr/share/solr/development/update - 请求的资源不可用。

** Invoke sunspot:solr:reindex (first_time)
** Invoke sunspot:reindex (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute sunspot:reindex
Skipping progress bar: for progress reporting, add gem 'progress_bar' to your Gemfile
rake aborted!
RSolr::Error::Http: RSolr::Error::Http - 404 Not Found
Error: <html><head><title>Apache Tomcat/6.0.39 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - /solr/default/update</h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>/solr/default/update</u></p><p><b>description</b> <u>The requested resource is not available.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/6.0.39</h3></body></html>

Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><delete><query>type:User</query></delete>"

注意:用户是我应用中的一个模型

Solr 正在运行,因为我可以毫无问题地访问 localhost:8080/solr/admin

最佳答案

我已经手动安装了 solr,因为 in repo 无论如何都是过时的版本,使用本教程 https://www.digitalocean.com/community/tutorials/how-to-install-solr-on-ubuntu-14-04 .

然后添加到 gemfile gem sunspot_solr,捆绑并执行 rake sunspot:solr:start 生成 solr/conf/schema.xml我已经复制到 opt/solr/solr/{APP_NAME}

并像那样配置我的config/sunspot.yml

development:
solr:
hostname: localhost
port: 8983
log_level: INFO
path: /solr/{APP_NAME}
solr_home: solr
disabled: false

它工作正常!

Full notes about the process I've saved as a gist, feel free to use it ;)

关于ruby-on-rails - 在 Rails 开发中使用 solr 和 sunspot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27563846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com