到Apache官网下载solr:http://lucene.apache.org/solr/
我下载的是solr-4.10.2,jdk使用的是7。
目录结构:
example文件夹里面有start.jar这个启动jar包,用命令行的方式就能启动solr了,内部是用jetty来启动的。
E:\solr-4.10.2\example>java -jar start.jar
看到这个字样应该就启动完成了,浏览器里面输入:http://localhost:8983/solr/
如果端口号被占用,就kill掉,或者修改solr的配置文件。在example/etc文件夹里面的jetty.xml中,修改端口port信息。
========================================================================================
下面是tomcat的部署方式
下载tomcat8,解压到任一目录。把solr-4.10.2\example\webapps下的solr.war拷贝到tomcat目录( apache-tomcat-8.0.15)下的webapps文件夹中。启动apache-tomcat-8.0.15\bin下的startup。
此时会报错,先不管。删掉webapps文件夹下的solr.war。solr文件夹下的文件打开的时候就提示没有文件了,所以solr.war不能删掉。
新建一个tomcat_solr文件夹,名称任意,放的地方也任意,在这里面新建一个solr文件夹,继续到solr-4.10.2目录中,将example/solr目录下的所有文件和目录拷贝到新建的solr文件夹目录下。
将example/lib/ext/下的所有jar包复制到tomcat/webapps/solr/WEB-INF的lib目录中,一共5个,是solr的独立日志处理模块。
在tomcat/webapps/solr/WEB-INF/下新建一个classes目录,将example/resources下的log4j.properties文件复制到该classes目录中,否则日志模块无法正常工作。
打开apache-tomcat-8.0.15\webapps\solr\WEB-INF下的web.xml文件,找到类似下面的注释代码,去掉注释,修改为:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:/solr_tomcat/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
再启动tomcat后,没有报错了,在浏览器里面输入http://localhost:8080/solr,就会出现以下的页面了,所以用tomcat来启动solr终于成功了。
感想:
我是先用tomcat8,再到tomcat7,最后到tomcat6。每次把solr.war放到webapps里面,启动tomcat目录的bin目录下的startup.bat后,跳出的显示信息都不报错,在浏览器里面访问tomcat正常,访问solr提示404错误,一直找很久都找不到什么原因。最后给tomcat部署了环境变量,不知是不是这个原因造成了可以,我是对tomcat6部署环境变量的,部署后启动tomcat7和8都不能自动解压solr.war了,不知什么原因!
===========================
后来我又在我的笔记本上重新一步步来配置,最后还是能成功的,我的笔记本是用Tomcat8,并且不用配置Tomcat环境变量。看来刚开始看不到错误信息,是因为掩盖在一堆英文信息中了,没能发现。