我在usr / shared / tomcat7文件夹中安装了Tomcat 7。之后在我的ubuntu中的/ var / www /文件夹中安装了Solr 4.7。我的solr现在正在http://localhost:8983/solr/ url上运行,但我现在想将它移动到tomcat服务器并希望通过http://localhost:8080/solr/ url访问它。
怎么办?请帮帮我。
答案 0 :(得分:1)
您可以使用Solr附带的Solr和Jetty,只需更改jetty.xml文件中的端口号即可。如果你想将Solr与Tomcat一起使用,你需要做更多的事情。这是一个完整的说明:
sudo apt-get install tomcat7
cd /tmp
wget http://{mirror site}/apache/lucene/solr/4.0.0/apache-solr-4.0.0.tgz
cp /tmp/apache-solr-4.0.0/dist/apache-solr-4.0.0.war /var/lib/tomcat7/webapps/solr.war
mkdir /usr/share/solr
cp -R /tmp/apache-solr-4.0.0/example/solr/* /usr/share/solr/
sudo pico /etc/tomcat7/Catalina/localhost/solr.xml
<Context docBase="/var/lib/tomcat7/webapps/solr.war" debug="0" privileged="true" allowLinking="true" crossContext="true" > <Environment name="solr/home" type="java.lang.String" value="/usr/share/solr" override="true" /> </Context>
创建核心 创建示例核心:
mkdir /var/lib/solr/example
cp -R /usr/share/solr/collection1 /var/lib/solr/example/
mkdir /var/lib/solr/data/example
chown -R tomcat7:tomcat7 /var/lib/solr
ln -s /var/lib/solr/example /usr/share/solr/example
<solr persistent="false"> <cores adminPath="/admin/cores" shareSchema="true"> <core name="example" instanceDir="example" /> </cores> </solr>
7. http://HOST_NAME:PORT/solr/admin/cores(http://example.com:8080/)提供Solr核心 8.以相同的方式添加其他核心。
在/etc/tomcat7/server.xml中更改tomcat端口8080
安全性:设置solr密码
一个。打开/etc/tomcat7/tomcat-users.xml进行编辑。
湾在元素中添加solr角色和用户并保存更改:
<role rolename="solradmin" /> <user username="username" password="password" roles="solradmin" />
℃。打开/var/lib/tomcat7/webapps/solr/WEB-INF/web.xml进行编辑。在元素中添加以下行:
<security-constraint> <web-resource-collection> <web-resource-name>Solr Lockdown</web-resource-name> <url-pattern>/</url-pattern> </web-resource-collection> <auth-constraint> <role-name>solradmin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Solr</realm-name> </login-config>
d。保存更改并重新启动Tomcat(/etc/init.d/tomcat7 restart)。
即使用http://username:password@example.com:8080/solr
访问solr如果tomcat抱怨缺少像logger这样的库,那么将所需的jar复制到/ var / tomcat7 / lib
答案 1 :(得分:0)