我已将solr-4.5.0配置为使用tomcat7和zookeeper 3.3.5(来自debian包) 根据许多教程我以下Catalina/localhost/solr.xml
文件JNDI中没有/ solr/home虽然它在Catalina/localhost/solr.xml中设置
<Context allowlinking="true" crosscontext="true" debug="1" docBase="/var/lib/tomcat7/webapps/solr.war" priviledged="true">
<Environment name="solr/home" override="true" type="java.lang.String" value="/opt/solr/webapps/solr1" />
</Context>
我已经在2个机配置Solr的云工作(使用的动物园管理员,以保持配置)创造了。 在两台机器上,开始tomcat7的时候,我看到catalina.out
以下错误:
11693 [localhost-startStop-1] INFO org.apache.solr.core.SolrResourceLoader – No /solr/home in JNDI
....
12529 [coreLoadExecutor-3-thread-1] ERROR org.apache.solr.core.CoreContainer – Failed to load file /var/lib/tomcat7/solr/collection1/solrconfig.xml
12532 [coreLoadExecutor-3-thread-1] ERROR org.apache.solr.core.CoreContainer – Unable to create core: collection1
org.apache.solr.common.SolrException: Could not load config file /var/lib/tomcat7/solr/collection1/solrconfig.xml
有趣的是,在该文件的beggining我看到:
64 [localhost-startStop-1] INFO org.apache.solr.core.SolrResourceLoader – Using JNDI solr.home: /opt/solr/webapps/solr1
71 [localhost-startStop-1] INFO org.apache.solr.core.SolrResourceLoader – new SolrResourceLoader for directory: '/opt/solr/webapps/solr1/'
当然,我想在JNDI中配置solr/home,而不是在solr.war中。 任何想法可能是错的?
P.S: 这个问题不是这样的问题重复: How to set solr/home in linux OS? 这: deploy war in Tomcat 不同的是,我定义的Solr /家,但它似乎没有工作。
是否有任何机会在同一个tomcat上有两个不同的solr实例? (例如,webapps/solr.war和webapps/solr1/< - 其中solr1是extracter solr.war)? – rchukh
另外,你可以在'71 [localhost-startStop-1] INFO org.apache.solr.core.SolrResourceLoader - 用于目录的新SolrResourceLoader:'/ opt/solr/webapps/solr1 /''后面显示下几行吗? – rchukh
还有一件事 - 根据[tomcat 7.0文档](http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Defining_a_context),一些'Context'参数不应该是完全小写的(例如allowlinking => allowLinking,crosscontext => crossContext),priviledged有一个错字(应该有特权),并且没有调试等选项。 – rchukh