2012-04-18 107 views
1

由于某种原因,最近我的Django Haystack Solr应用程序停止工作。我使用的草堆1.2.7,这是试图让Solr的查询时出现错误:Django草垛报告`Errno 111:Connection Refused`连接到Solr

无法使用查询Solr的“(name_auto:试验)和(django_ct:cities.city)”: Errno 111]连接被拒绝

明显的答案是我的HAYSTACK_SOLR_URL错了,或者Solr没有运行。我检查了这两种可能性,Solr像往常一样运行在与HAYSTACK_SOLR_URL中指定的地址相同的地址上。我可以在网络浏览器中打开它,甚至可以在Web界面上查询。

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

那么Solr是否会拒绝连接?我该如何检查?我如何解决它?

回答

2

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

JETTY_HOST=0.0.0.0 

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

相关问题