1

由于某种原因,最近我的 Django Haystack Solr 应用程序停止工作。我正在使用 Haystack 1.2.7,这是尝试进行 Solr 查询时的错误:

使用 '(name_auto:test) AND (django_ct:cities.city)' 查询 Solr 失败:[Errno 111] 连接被拒绝

显而易见的答案是我HAYSTACK_SOLR_URL的错误,或者 Solr 没有运行。我检查了这两种可能性,并且 Solr 像往常一样在与HAYSTACK_SOLR_URL. 我可以在网络浏览器中打开它,甚至可以在网络界面上进行查询。

HAYSTACK_SITECONF = 'project.search_sites'
HAYSTACK_SEARCH_ENGINE = 'solr'
HAYSTACK_SOLR_URL = 'http://localhost:8080/solr'

那么 Solr 拒绝连接还有其他原因吗?我该如何检查?我如何解决它?

4

1 回答 1

2

该问题似乎是由最近的系统更新引起的,该更新更新了我用来运行 Solr 的 HTTP 服务器 Jetty。它拒绝连接,因为它的设置文件只允许某些用户。所以我编辑/etc/default/jetty包含这一行:

JETTY_HOST=0.0.0.0

所以它现在接受所有传入的连接,解决了问题。您还可以指定 Django 将使用的特定连接,以限制滥用的可能性。

于 2012-04-18T11:47:45.153 回答