gpt4 book ai didi

ruby-on-rails - 在没有 Tomcat 的情况下为生产环境设置 Sunspot

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

在过去的几天里,我一直在尝试将我的 Rails 应用程序转移到生产模式,但我遇到了一个障碍,Sunspot 不想将其转移到生产模式。

我在多个地方看到您应该使用独立的 Solr 安装并在 Tomcat 后面运行它,但是通过我试过的 20 多个教程我无法让它正常工作 - 我的 log/production.log 中的所有 Solr 请求都收到 404。

有没有办法在生产中运行纯太阳黑子?如果它是非常 hacky 和糟糕的做法,我不介意 - 我只是希望它运行而不必再次经历所有这些外部安装的痛苦。

我试过的一件事是将我的 config/sunspot.yml 改成这样:

production:
solr:
hostname: localhost
port: 8982
log_level: WARNING
path: /solr/development
# read_timeout: 2
# open_timeout: 0.5

development:
solr:
hostname: localhost
port: 8982
log_level: INFO
path: /solr/development

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

虽然这似乎没有用。这种类型的解决方案似乎很有前途——当 sunspot 真正使用开发 solr 实例时,它会认为它在生产模式下运行。

关于服务器设置的信息: 2 个 Rails 应用程序,一个在文档根目录中(www.bla.com 是一个应用程序),另一个在子 URI 中(www.bla.com/my-broken-搜索应用程序)。我在 Ubuntu 12.04 上使用 Phusion Passenger 和 Apache。

最佳答案

由于你没有提供足够的信息,我只能提供一个可能适合你问题的解决方案。由于 Tomcat 默认运行在端口号 8080 上,你应该更改你的 config/sunspot.yml归档到

production:
solr:
hostname: localhost
port: 8080
log_level: WARNING
path: /solr/development
# read_timeout: 2
# open_timeout: 0.5

然而,与其他程序发生端口冲突的可能性很高。有时我们只需要更改 Tomcat 端口号。在 How to change Tomcat default port ? 上获取有关如何更改 tomcat 端口的更多信息。

关于ruby-on-rails - 在没有 Tomcat 的情况下为生产环境设置 Sunspot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29784638/

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