接受到Windows Server 2012上运行的Solr/Jetty实例的远程连接

接受到Windows Server 2012上运行的Solr/Jetty实例的远程连接,solr,jetty,windows-server-2012,windows-firewall,Solr,Jetty,Windows Server 2012,Windows Firewall,我正在Windows Server 2012上运行Solr 4.10.1 Jetty实例。 我正在使用下载附带的简单示例Jetty版本,通过运行java-jar start.jar(来自solr-4.10.1\example),我可以通过从Windows服务器访问我的solr实例http://localhost:8983/solr 现在我想远程访问Solr/Jetty实例,即从另一台计算机访问。也就是说,我希望能够从远程客户端/计算机通过对http://:8080/Solr和/或http://:

我正在Windows Server 2012上运行Solr 4.10.1 Jetty实例。 我正在使用下载附带的简单示例Jetty版本,通过运行
java-jar start.jar
(来自solr-4.10.1\example),我可以通过
从Windows服务器访问我的solr实例http://localhost:8983/solr

现在我想远程访问Solr/Jetty实例,即从另一台计算机访问。也就是说,我希望能够从远程客户端/计算机通过对
http://:8080/Solr
和/或
http://:8080/Solr
的HTTTP调用访问在我的Windows服务器上运行的Solr实例

我已经在我的Windows服务器上创建了一个入站防火墙规则,在本地端口8080上接受任何远程地址,并且我已经将jetty.xml上的jetty端口更改为8080,工作正常(我可以访问
http://localhost:8080/solr
从我的Windows服务器)。 但是,当我尝试将jetty主机更改为服务器的IP时,我无法再访问Solr core集合,即core选择器中没有集合,因此我无法对
执行任何查询http:///solr/#/collection1/“
-我只看到一个“空白”的Solr界面

我更改的jetty.xml部分如下所示:

<Call name="addConnector">
  <Arg>
      <New class="org.eclipse.jetty.server.bio.SocketConnector">
        <Set name="host"><SystemProperty name="jetty.host" default="<WINDOWS_SERVER_IP>"/></Set>
        <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
        <Set name="maxIdleTime">50000</Set>
        <Set name="lowResourceMaxIdleTime">1500</Set>
        <Set name="statsOn">false</Set>
      </New>
  </Arg>
</Call>

50000
1500
假的

首先,这是正确的方法吗?如果是,我做错了什么?如果没有,我怎样才能做到?我试图寻找方法来实现这一点,但似乎找不到任何好的资源。

这一问题已得到解决。我还得做两件事: 1.让Jetty使用专用IP 0.0.0.0,让其监听所有接口:

<Call name="addConnector">
  <Arg>
      <New class="org.eclipse.jetty.server.bio.SocketConnector">
        <Set name="host"><SystemProperty name="jetty.host" default="<0.0.0.0>"/></Set>
        <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
        <Set name="maxIdleTime">50000</Set>
        <Set name="lowResourceMaxIdleTime">1500</Set>
        <Set name="statsOn">false</Set>
      </New>
  </Arg>
</Call> 

50000
1500
假的
  • 打开端口8080上的HTTP通信,从客户端到域防火墙上的服务器
  • 现在可以在
    http://SERVER_DOMAIN_NAME:8080/solr
    用于此域中连接的所有计算机