Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 解决rails 5的太阳黑子问题RSolr::Error::connectiondensed:连接拒绝_Ruby On Rails_Solr_Ruby On Rails 5_Sunspot Solr - Fatal编程技术网

Ruby on rails 解决rails 5的太阳黑子问题RSolr::Error::connectiondensed:连接拒绝

Ruby on rails 解决rails 5的太阳黑子问题RSolr::Error::connectiondensed:连接拒绝,ruby-on-rails,solr,ruby-on-rails-5,sunspot-solr,Ruby On Rails,Solr,Ruby On Rails 5,Sunspot Solr,最近,我们将一个应用程序从rails 4迁移到rails 5.1.6 我们面临的问题是,在太阳黑子开始时,它显示为太阳黑子已经开始。但在reindex或执行任何数据库操作时,我们都会遇到连接被拒绝错误 production: solr: hostname: localhost port: 8983 log_level: WARNING path: /solr/default development: solr: hostname: localhos

最近,我们将一个应用程序从rails 4迁移到rails 5.1.6 我们面临的问题是,在太阳黑子开始时,它显示为太阳黑子已经开始。但在reindex或执行任何数据库操作时,我们都会遇到连接被拒绝错误

production:
  solr:
    hostname: localhost
    port: 8983
    log_level: WARNING
    path: /solr/default
development:
  solr:
    hostname: localhost
    port: 8983
    log_level: INFO
    path: /solr/default
test:
  solr:
    hostname: localhost
    port: 8983
    log_level: WARNING
    path: /solr/test
这就是我们遵循的过程


有谁能帮我们解决这个问题吗?错误503连接被拒绝通常与以下问题有关:

  • Solr服务器实际上并没有启动(太阳黑子可能会告诉你们它是启动的,不要听它的,它通常是一个谎言)。要检查它是否真的发射了,请将太阳黑子:solr:start耙两次。它应该第二次失败
  • Solr服务器在错误的环境中启动。Execute
    RAILS\u ENV=您的\u环境包exec rake sunspot:solr:start
    。将RAILS_ENV放在开头,而不是结尾
  • solr服务器在两个不同的环境中启动两次。您的solr文件夹中甚至可能有一个文件write.lock。删除此文件(如果有)。与ps aux | grep solr确认您只有一个solr正在运行
通常,我们只是杀死solr进程并重新启动它们,90%的时间就足够了


编辑:检查solr是否实际运行的另一种方法是键入
rake sunspot:solr:run
,它在shell中而不是在后台运行进程。如果失败,您应该能够了解原因。

您可以检查solr端口是否正常工作吗?表示您可以尝试查询
http://localhost:8983/solr/query?q=test
用于测试目的