我在Linux服务器上的Jetty下运行Solr 5.2.1,而连接到Solr的应用程序正在Rackspace的同一网络中的另一台服务器上运行。我已关闭Solr服务器上的端口8983以阻止对Solr Admin的公共访问,但这意味着应用程序无法连接到Solr。
我尝试使用在两台服务器之间运行的专用网络,但没有找到任何方法将应用程序连接到Solr,无需直接访问端口8983.
虽然我对Jetty知之甚少,但我试图在那里找到解决方案,或者重新配置localhost,但没有成功。
很抱歉,但我没有提供任何真实的例子,因为我一直在暗中寻找解决方案,因为我对连接服务器和服务器知之甚少。
非常感谢任何有用的建议。
答案 0 :(得分:1)
非常感谢回复。实际上,解决方案是构建反向代理。当我写这个问题时,我不知道代理。这本来就更容易理解。 (至少对我而言)的最佳解决方案来自:
答案 1 :(得分:0)
虽然我不知道RackSpace的基础设施,但我怀疑所有机器都被视为“公共”,而不是防火墙后面,或受non-routable IP addresses保护。
就像@ Qin-Dong-Liang指出的那样,你必须控制Jetty最多的是主机(它监听的接口)和端口。
这意味着,除localhost
之外的任何设备上设置侦听端口的那一刻,所有机器都可以访问该服务器。
如果您需要限制允许哪些机器连接到该主机:端口组合,那么您应该在solr服务器的操作系统上使用较低级别的工具进行操作。像iptables,ipfw等工具