solr home,solr core,tomcat部署solr
solr默认使用jetty容器,默认的SolrHome为example/solr;
通过其他方式指定SolrHome:
java -Dsolr.solr.home=/etc/somedir
Solr Home的目录结构:
solr home可以包含多个solr core,若在solr.xml文件中未指定solr core或者没有solr.xml文件,则默认的solr core为“collection1”,并且所在的目录名称也为”collection1“。
--solrhome-dirname
--solrcore-dirname
--conf/
--solrconfig.xml
--schema.xml # 描述需要索引的字段
--data/ # 这是solr默认保存索引的位置,也可以在solrconfig.xml中指定
--lib/ # solr会自动寻找在solrconfig.xml和schema.xml中所需的jar包;也可以手动在solrconfig.xml中通过<lib>指定
-- solrcore2-dirname
-...
--solr.xml
tomcat中部署solr
环境:solr4.4,tomcat8.5.43
-
复制
solr-4.4.0\example\webapps
中的solr.war
->apache-tomcat-8.5.43\webapps
; -
在
c:\
创建solrhome
,复制solr-4.4.0\example\solr\
内容->c:\solrhome\
; -
创建
apache-tomcat-8.5.43\conf\Catalina\localhost\solr.xml
,内容为:<Context docBase="solr.war" debug="0" crossContext="true" > <Environment name="solr/home" type="java.lang.String" value="C:\solrhome" override="true" /> </Context>
doBase是相对于web根目录的相对地址,这里的web根目录为:
c:\apache-tomcat-8.5.43\webapps\
-
复制
solr-4.4.0\example\lib\ext\*.jar
->apache-tomcat-8.5.43\webapps\solr\WEB-INF\lib\
; -
复制
solr-4.4.0\example\resources\log4j.properties
->apache-tomcat-8.5.43\webapps\solr\WEB-INF\classes\
; -
apache-tomcat-8.5.43\bin\startup.bat
启动tomcat; -
访问:
http://localhost:8080/solr/
。
在tomcat中部署solr后,可以使用solr-4.4.0\example\exampledocs\post.jar向solr中提交文件:
java -jar -Durl=http://localhost:8080/solr/update post.jar *.xml
tomcat输出日志乱码问题解决
若遇到windows控制台打印tomcat日志信息乱码的情况,注释掉logging.properties中有关UTF-8的行。在intelij中运行tomcat,控制台显示的日志信息乱码,也可这样解决。