我正在使用solr 4.10.3。它处于云模式,具有一个分片和三个节点(一个领导者和两个从属节点)。我必须将它投入生产。我的网站是在ajax / php中,需要与solr通信。我担心安全问题。
答案 0 :(得分:2)
Solr不适合面向公众(although some progress has been made),因此我强烈建议将其作为一个整体用于互联网,并在您的应用程序中编写一个小型中间件来接收来自客户端应用程序(进行AJAX调用的地方),验证它并将其传递给Solr中的正确端点。
这将使您的服务器过载更加困难,因为伪造的查询使用了您没有想到的Solr的其他模块(例如文档群集,这可能是非常耗费资源的),并且会关闭对服务器的任何访问权限。更新,导入或备份端点。
中间件(我想用你的PHP编写)只会接受查询,确保看起来没问题,将其转发并将其传递给Solr,然后再将结果返回给用户。