Tornar o servidor Solr acessível na rede

3

Então eu instalei o Solr em um servidor linux e quero acessá-lo de outro servidor web e / ou do meu computador.

Do servidor solar, posso ver que ele está sendo executado

[root@solr ~]# wget -qO- http://localhost:8983/solr




<html>
<head>
<link rel="stylesheet" type="text/css" href="solr-admin.css">
<link rel="icon" href="favicon.ico" type="image/ico"></link>
<link rel="shortcut icon" href="favicon.ico" type="image/ico"></link>
<title>Welcome to Solr</title>
</head>

<body>
<h1>Welcome to Solr!</h1>
<a href="."><img border="0" align="right" height="78" width="142" src="admin/solr_small.png" alt="Solr"/></a>


<a href="admin/">Solr Admin</a>


</body>
</html>

No entanto, não é possível conectar o http://192.168.1.19:8983/solr/ ao meu navegador ou o ping do meu servidor da web. Como posso tornar o Solr acessível a outros dispositivos na minha rede?

# netstat -anp | grep :8983
tcp        0      0 :::8983                     :::*                        LISTEN      15138/java 
$ telnet 192.168.1.19 8983
Trying 192.168.1.19...
telnet: connect to address 192.168.1.19: Connection refused
telnet: Unable to connect to remote host
    
por Steve Robbins 08.11.2013 / 00:32

2 respostas

3

Como você está executando o Solr? Sob Tomcat? Vou assumir assim, desde que eu sei como restringir a localhost em Tomcat & se você apenas desfazer o que eu faço para restringi-lo, então você pode colocar em rede sua instalação do Solr.

No meu caso, eu proíbo o Tomcat de lidar com o mundo exterior - prefiro o proxy reverso do Apache - então faço o seguinte.

Eu edito o Tomcat server.xml aqui:

/etc/tomcat6/server.xml

Eu procuro as configurações de Connector e adiciono address="127.0.0.1" , que bloqueia a instalação do Tomcat para 127.0.0.1 (aka: localhost)

<Connector port="8080" protocol="HTTP/1.1"
           address="127.0.0.1"
           connectionTimeout="20000"
           URIEncoding="UTF-8"
           redirectPort="8443" />

Portanto, no seu caso, basta remover a configuração address da seguinte forma:

<Connector port="8080" protocol="HTTP/1.1"  
           connectionTimeout="20000"
           URIEncoding="UTF-8"
           redirectPort="8443" />

Mas, novamente, não há ideia de como sua instância do Solr está sendo veiculada. E se não estiver sendo veiculado por meio do Tomcat, outra pessoa precisará entrar em contato.

    
por 08.11.2013 / 20:18
0

Você pode verificar se o servidor Solr está escutando as interfaces corretas?

Qual é a saída de:

netstat -anp | grep :8983

Se você vir 127.0.0.1:8983 ou ::1:8983 , isso acontece porque seu servidor não escuta o mundo externo. Você pode corrigir isso editando a configuração do servidor da Web que você está usando.

Caso contrário, se você vir 0.0.0.0:8983 , o problema pode estar em outro lugar.

    
por 08.11.2013 / 00:38