Solr lässt sich einfach mit Buildout installieren. Hierzu kann das Paket collective.recipe.solrinstance verwendet werden.
Hierzu erstellen wir die Datei solr.cfg
, die z.B. so aussehen kann:
[buildout]
parts =
solr-download
solr-instance
[versions]
collective.recipe.solrinstance = 3.5
gocept.download = 0.9.5
[solr-download]
recipe = hexagonit.recipe.download
download-directory = parts/solr-download
strip-top-level-dir = true
url = http://ftp-stud.hs-esslingen.de/pub/Mirrors/ftp.apache.org/dist//lucene/solr/3.4.0/apache-solr-3.4.0.tgz
ignore-existing = true
solr-instance]
recipe = collective.recipe.solrinstance
solr-location = ${solr-download:location}
host = 83.223.91.163
port = 8983
basepath = search
solr-location
Pfad zur Installation von Solr. In unserem Fall ist dies
${solr-download:location}
host
Name oder IP-Adresse des Solr-Servers.
Der Standardwert ist localhost
:
port
Der Port, an dem Solr auf Anfragen lauscht.
Der Standardwert ist 8983
.
basepath
Pfad zum Solr-Service auf dem Server. Hieruas wird die endgülitge URL für den Solr-Service generiert:
$host:$port/$basepath
Der Standardwert ist solr
.
Der Solr-Server kann nun einfach gestartet werden mit:
$ ./bin/solr-instance fg
oder:
$ ./bin/solr-instance start
logdir = ${buildout:directory}/var/solr
logging-template = ${buildout:directory}/templates/logging.properties.tmpl
logdir
${buildout:directory}/var/solr
logging-template
${buildout:directory}/templates/logging.properties.tmpl
Das logging.properties.tmpl
kann dann z.B. so aussehen:
# Default global logging level:
.level= INFO
max-num-results = 500
section-name = SOLR
unique-key = id
default-search-field = text
filter =
text solr.StopFilterFactory ignoreCase="true" words="stopwords.txt"
text solr.WordDelimiterFilterFactory generateWordParts="1" generateNumberParts="1" catenateWords="0" catencatenateAll="0"
text solr.LowerCaseFilterFactory
text solr.RemoveDuplicatesTokenFilterFactory
index =
name:text type:text stored:true
name:title type:text stored:true
name:created type:date stored:true required:true
name:modified type:date stored:true
name:filesize type:integer stored:true
name:mimetype type:string stored:true
name:id type:string stored:true required:true
name:relpath type:string stored:true
name:fullpath type:string stored:true
name:renderurl type:string stored:true
name:tag type:string stored:true
max-num-results
Die maximale Anzahl von Ergebnissen, die der Solr-Server ausliefern soll.
Der Standardwert ist 500
.
section-name
Name des Abschnitts für die Produktkonfiguration, die für die zope.conf
generiert wird.
Der Standardwert ist solr
.
unique-key
beschreibt ein Feld als eindeutig für alle Dokumente. Weitere Informationen hierzu erhalten Sie unter SchemaXml.
Der Standardwert ist uid
.
default-search-field
konfiguriert das Standardsuchfeld sofern kein Feld explizit angegeben wurde.
filter
konfiguriert zusätzliche Filter für den Standard-Feldtyp. Jeder Filter wird in einer neuen Zeile aus einem Index und Parametern definiert. Dabei kann einer der verfügbaren Indextypen angegeben werden und als Parameter Schlüssel-Wert-Paare. Einen Überblick über die verfügbaren Filter erhalten Sie in TokenFilterFactories.
Weitere Konfigurationsmöglichkeiten von collective.recipe.solrinstance
erhalten Sie in Supported options.