Java 在服务器上安装Solr:位置?

Java 在服务器上安装Solr:位置?,java,drupal,solr,tomcat6,Java,Drupal,Solr,Tomcat6,好的,我一直在关注如何在服务器上安装Solr,并通过Drupal进行访问。我的问题是我把Solr放在正确的位置 我知道我的Java很好用Java-version 我知道我的Tomcat工作正常,使用服务tomcat6 start:Starting tomcat6[OK] 注意:虽然我无法通过http:website.com:8080访问Tomcat(我保留了端口默认值) 我当前的设置如下: /usr/bin/java (Java install

好的,我一直在关注如何在服务器上安装Solr,并通过Drupal进行访问。我的问题是我把Solr放在正确的位置

我知道我的Java很好用
Java-version
我知道我的Tomcat工作正常,使用
服务tomcat6 start:Starting tomcat6[OK]

注意:虽然我无法通过http:website.com:8080访问Tomcat(我保留了端口默认值)

我当前的设置如下:

/usr/bin/java                           (Java installation - via yum)
/usr/share/tomcat6                      (Tomcat installation - via yum)

/opt/solr                               (Solr Instance Installation - manually)

/opt/share/tomcat6/solr/drupal-solr     (One Solr Core - manually)

/home/website1/public_html              (just a site - I'd like to use Solr here)
/home/website2/public_html              (just another site)
/home/website3/public_html              (just another site)
如上所述,“Solr能够使用Solr应用程序的一个实例提供多个搜索索引,或核心。每个核心都是独立配置的,并且有一个单独的配置文件来定义每个核心。”

因此,假设我的网站1需要访问Solr的核心之一。这个核心是否需要安装在

/home/website1/                         (where my Solr Core should be?)
/home/website1/public_html              (my website files - drupal install)
…对吗?
…或者我可以将我的Solr和所有其他安装在我所有网站上方的root中吗

您可以通过

  • 执行curl localhost:8080如果看到Tomcat响应,则可能是来自端口8080的出站流量在Web服务器的安全组或iptable中被阻止
  • 如果在步骤1中,curl失败,那么Tomcat没有在8080上运行,而是在其他端口上运行。请参考此项查找正确的端口:
    http://askubuntu.com/questions/143785/what-port-is-tomcat-6-running-on
  • 是的,您可以在任何地方安装Solr。您必须让tomcat知道Solr的安装位置,这是步骤5:在您参考的文档中创建Solr上下文文件

    假设您的Solr位于:

    /索尔

    假设您的多核名称为site1、site2、site3,则多核结构如下所示:

    /索尔

    /solr/site1

    /solr/site2

    /solr/site3

    是的,每个核心都有自己的conf目录,以及唯一的配置文件,如solrconfig.xml、schema.xml、synonyms.txt等


    现在,如果您的tomcat在端口8080上运行,并且假设您的IP是10.20.30.40,那么当我看到Tomcat6的网页的源代码时,您将能够访问位于:10.20.30.40:8080/solr/

    的所有内核列表。虽然当我使用
    :8080时,我无法显示任何内容。为什么会这样?再次感谢您的回复。您能详细说明一下吗?您是否有与您的站点关联的DNS?您是从Web服务器在您的站点IP:8080上卷曲,还是尝试将其加载到浏览器中?您可能需要修改安全组或iptable,以允许运行
    curl
    的端口8080上的出站流量,同时
    SSH
    被导入服务器。这似乎可行,并将源代码拉到tomcat网页上。但是,如果我尝试在web浏览器中执行
    :8080
    ,它将不起作用。我不确定当前的安全组或iptable。稍后我会在这里用谷歌搜索,并进行调查。发现问题时,我没有为8080打开端口。我关掉了
    iptables
    ,我的浏览器中的8080工作得很好。因此,我将进一步研究这个问题。非常感谢您的指导,并回答了我关于Solr内核正确结构的问题。