2012-07-19 2 views
2

sunspot_rails를 사용하여 검색을 수행 할 때 ECONNREFUSED 오류가 발생하는 문제가 있습니다. 보석 (sunspot_rails 및 sunspot_solr) 모두 제대로 설치된 것 같습니다. 버전 1.3.3을 실행 중이며 올바르게 실행중인 서버가 있습니다.Sunspot 및 Solr in Rails를 사용하여 연결이 거부되었습니다.

나는 이것에 관해 또 다른 게시물을 발견했으나, 게시물은 sunspot solr 서버 시작을 권장했다. 나는 확실히 그 일을했지만 오류는 계속 발생합니다.

나는이 문제가 서버가있는 포트 때문이라고 생각합니다. RAILS_ENV=development rake sunspot:solr:run의 출력을 보면 서버가 포트 8983에서 실행 중임을 나타냅니다. 또한 같은 효과를 내기 위해 RAILS_ENV=production rake sunspot:solr:run 명령을 시도했습니다. 이 개발을위한 포트 8982에있을을 생각하지만 아무리 내가 뭘가 다시 시작 유지하는 것 없다

production: 
    solr: 
    hostname: localhost 
    port: 8983 
    log_level: WARNING 

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

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

주의 사항 : 나는 sunspot.yml 설정 파일을 검사하는 경우

는, 다음을 보여줍니다 서버의 포트 8983. 어떻게 이런 일이 일어날 지 알기나 해?

감사합니다.

업데이트 : 나는 잠재적 인 원인을 발견했습니다. 내 프로젝트 폴더에서 /solr/conf/scripts.conf 파일은 다음을 포함합니다 : solr_port=8983. 이것은 Rails 환경이 활성화되어 있더라도 하드 코딩 된 포트를 의미하는 것으로 보입니다.

+1

나는 모든 포트를 (테스트, 개발 및 생산)를 변경하는 것이 었습니다 : 저는 여기에 대한 자세한 설명은 제기 한 문제에 대한 링크입니다 때때로 흑점에 대한 레이크 작업이 실제로 solr을 멈추게하지 않는 것을 알아 챘습니다. 이것은 다음에 solr을 시작하려고 할 때 발생할 수 있습니다. 실제로 시작되지만 실제로 실패합니다. solr 프로세스를 수동으로 종료하십시오. 실행되고 있지 않다고 확신되면 원하는 환경에서 시작하십시오. –

+0

@BenMiller 흠, 나는 윈도우 머신에있다.'rake sunspot : solr : stop' 명령은 다음 메시지와 함께 만난다 :'이 명령은 i386-mingw32에서 지원되지 않는다. rake sunspot : solr : run을 실행하여 Solr을 포 그라운드로 실행하십시오. 'solr 프로세스를 죽일 다른 방법이 있습니까? – aardvarkk

+0

Windows에서 Sun Spot을 사용하지 않았습니다. 여기에서 어디로 가야할지 모르겠다. 작업 관리자를 확인하고 실행중인 프로세스가 없는지 확인할 수 있습니다. –

답변

관련 문제