80 lines
4.1 KiB
Plaintext
80 lines
4.1 KiB
Plaintext
Setting up Solr
|
||
---------------
|
||
|
||
In order for this module to work, you will first need to set up a Solr server.
|
||
For this, you can either purchase a server from a web Solr hosts or set up your
|
||
own Solr server on your web server (if you have the necessary rights to do so).
|
||
If you want to use a hosted solution, a number of companies are listed on the
|
||
module's project page [1]. Otherwise, please follow the instructions below.
|
||
A more detailed set of instructions is available at [2].
|
||
|
||
[1] https://drupal.org/project/search_api_solr
|
||
[2] https://drupal.org/node/1999310
|
||
|
||
As a pre-requisite for running your own Solr server, you'll need Java 6 or
|
||
higher.
|
||
|
||
Download the latest version of Solr 4.x from [3] and unpack the archive
|
||
somewhere outside of your web server's document tree.
|
||
|
||
[3] http://www.apache.org/dyn/closer.cgi/lucene/solr/
|
||
|
||
This module also supports Solr 1.4 and 3.x. For better performance and more
|
||
features, 4.x should be used, though. 1.4 is discouraged altogether, as several
|
||
features of the module don't work at all in 1.4.
|
||
|
||
For small websites, using the example application, located in $SOLR/example/,
|
||
usually suffices. In any case, you can use it for developing andd testing. The
|
||
following instructions will assume you are using the example application,
|
||
otherwise you should be able to substitute the corresponding paths.
|
||
|
||
NOTE: The Solr 4.3+ example application is currently not completely supported
|
||
with the configuration files included in this module, due to a slight change in
|
||
directory structure. To fix this, simply copy, move or symlink the contrib/
|
||
directory from the top level of the extracted Solr package one level down to
|
||
example/.
|
||
(For other directory structures: the contrib/ directory has to be in the
|
||
directory two levels up from the one which includes the conf/ directory. For
|
||
help, just start the Solr server and check the log files for WARN messages –
|
||
they should state in which place Solr expects the directory to be.)
|
||
|
||
CAUTION! For production sites, it is vital that you somehow prevent outside
|
||
access to the Solr server. Otherwise, attackers could read, corrupt or delete
|
||
all your indexed data. Using the example server WON'T prevent this by default.
|
||
If it is available, the probably easiest way of preventing this is to disable
|
||
outside access to the ports used by Solr through your server's network
|
||
configuration or through the use of a firewall.
|
||
Other options include adding basic HTTP authentication or renaming the solr/
|
||
directory to a random string of characters and using that as the path.
|
||
|
||
Before starting the Solr server you will have to make sure it uses the proper
|
||
configuration files. These are located in the solr-conf/ directory in this
|
||
module, in a sub-directory according to the Solr version you are using. Copy all
|
||
the files from that directory into Solr's configuration directory
|
||
($SOLR/example/solr/collection1/conf/ in case of the 4.x example application),
|
||
after backing up all files that would be overwritten.
|
||
|
||
NOTE: The mapping-ISOLatin1Accent.txt is only included in the module for
|
||
completeness' sake, as it is required to start the Solr server. It will be
|
||
usually advisable to just use the file of the example application in this case,
|
||
though, as it contains really useful definitions, while the file provided with
|
||
this module is empty, apart from some documentation. For licensing reasons, it
|
||
is not possible for us to include the definitions in the example config file in
|
||
the copy this module provides.
|
||
|
||
You can then start Solr. For the example application, go to $SOLR/example/ and
|
||
issue the following command (assuming Java is correctly installed):
|
||
|
||
java -jar start.jar &
|
||
|
||
Afterwards, go to [4] in your web browser to ensure Solr is running correctly.
|
||
|
||
[4] http://localhost:8983/solr/#/
|
||
|
||
You can then enable this module and create a new server, using the "Solr search"
|
||
service class. Enter the hostname, port and path corresponding to your Solr
|
||
server in the appropriate fields. The default values already correspond to the
|
||
example application, so you won't have to change the values if you use that.
|
||
If you are using HTTP Authentication to protect your Solr server you also have
|
||
to provide the appropriate user and password here.
|