本文共 808 字,大约阅读时间需要 2 分钟。
测试于:Solr 4.5.1, Jdk 1.6.0_45, Tomcat 6.0.37 | CentOS 5.7
Solr管理后台功能可谓强大,但是真正线上,如果管理后台地址可以公开访问的话,不但core的结构会暴漏出来,索引库甚至可以被修改或删除。
推荐的做法是,在apache或其他服务器上做设置,平时禁用对外的访问地址,项目访问solr的内网地址(如:http://localhost:8080/solr/collection1);平时线下调试使用本地的solr,如需要调试线上的,可以临时开打对外地址,用完再关闭。
如果你用的是ajp方式连接apache与tomcat,可参考如下红色部分设置。需要打开时,在前边加#号注释掉,然后重启apache即可( /etc/httpd/conf/httpd.conf )
ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/html ServerName www.devnote.cn ProxyPass /solr/ ! ProxyPass / ajp://localhost:8009/ ErrorLog logs/www.devnote.cn-error_log CustomLog logs/www.devnote.cn-access_log common
注:如果用ajp连接方式,内网访问时不能用http://localhost:8009/solr/collection1,需要用默认的8080或者你自己定义的tomcat端口。