2012-09-27 4 views
1

Solr 서버가 잘 작동하고 다양한 IP 주소에 대한 액세스를 제한하는 Apache 프록시 서버 뒤에 앉아 있습니다.Javascript로 Solr을 안전하게 쿼리하십시오.

우리의 어플리케이션 (ZF/PHP로 작성)은 PHP 프록시 함수를 사용하여 Solr 인스턴스를 쿼리합니다 (ZF 서버의 IP는 허용됩니다). 그러나 새로운 인터페이스를 테스트하고 Solr JS에서 직접 가져온 것은 PHP 코드를 사용하여 프록시를 처리하는 것보다 가볍다.

내가 테스트중인 페이지는 페이지로드 당 25 개 이상의 solr 쿼리를 실행합니다. pure JS를 사용하면 PHP를 사용하여 훌륭한로드가 가능합니다.

jQuery를 사용하여 클라이언트 쪽을 프록시 처리 할 수 ​​있습니까? 아니면 PHP보다 훨씬 빠르게 할 수 있습니까?

나는 다양한 유형의 프록시, 리버스 프록시, 안전하게 키를 노출하지 않고 웹 서비스를 조회하면서 날짜를 검색해 왔습니다.하지만 JS를 사용하여 서비스를 쿼리하는 가장 좋은 방법은 아직 많이 모르겠습니다. .

자습서 나 조언을 보내 주시면 감사하겠습니다.

+0

PHP의 쿼리 속도가 왜 그렇게 다른지 궁금합니다. 결국 Solr의 "직접적인"쿼리는 기술적으로 PHP에서 만들어진 REST 요청과 매우 유사해야합니다. 이 문제들이 네트워크와 관련이 없다고 확신합니까? – wroniasty

+0

'{ 'delete': '* : *'}'가 노출되면 사용자가 인덱스로 보내지 않도록하려면 어떻게해야합니까? 대신 성능을 위해 램프를 조정하십시오. – aitchnyu

+0

좋은 포인트 wroniasty ... 더 많은 인터넷 검색 후 PHP는 잠겨 세션이 내 초침을 일으키는 원인이 및 슈퍼 천천히 유사한 실행 http://stackoverflow.com/questions/3760926/zend-auth-locked-session 감사합니다 Logged 게시 용! – Mrmartin

답변

1

인터넷에서 직접 호출되도록 지정된 requestHandler를 생성하지 않고 액세스 할 수있게 만드는 이유는 무엇입니까? (solrconfig.xml 비교).

Apache-Proxy는이 requestHandler (requestHandler의 URL)에 대한 액세스를 제한하도록 구성 될 수 있으며 requestHandler 자체는 암시 적 쿼리를 추가하도록 구성 될 수 있습니다 (invariant fq-parameter로 가능해야 함).

update-requestHandler에 액세스 할 수없는 경우 괜찮습니다.

관련 문제