[{ALLOW view All}]
[{ALLOW edit Authenticated}]

!Site Search 

Beside Google (Custom Search) and Amazon's (ElastiCache) services I prefer a custom service running on my own server based on filesystem.

It seems that Apache [Lucene|http://lucene.apache.org/java/docs/] is the best and most common.
It is available in java and .net. It is also in available in php in the form of a zend framework module.

Built on it there are __Apache [Solr|http://lucene.apache.org/solr/]__ and 
Elastic [ElasticSearch|https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html]. \\
See [solr vs elasticsearch|http://solr-vs-elasticsearch.com/] and [stackoverflow|https://stackoverflow.com/questions/10213009/solr-vs-elasticsearch]

Here are some more (not evaluated!)
* [Xapian|https://xapian.org] (and maybe Omega front end) 
* [Sphinx|http://sphinxsearch.com/]
* [D3.js|http://devdocs.io/d3~4/]
* [Splunk|http://docs.splunk.com/Documentation]
* [Algolia|https://www.algolia.com/products/search]
* [Coveo|https://www.coveo.com/en/solutions/website-search]
* [Stanbol|https://stanbol.apache.org/]
* [Knack|https://www.knack.com/]
* Hive
* Aiven
* Red Gate SQL Compare
* InfluxDB
* ProDOC
* TDSmaker
* SearchBlox
* MarkLogic

!Install Solr
Solr is a REST based web-service running apart from the webserver, standard on port 32768.

See [docu|http://lucene.apache.org/solr/guide/7_5/solr-tutorial.html#solr-tutorial]
* Download [solr-7.5.0.zip|http://lucene.apache.org/solr/downloads.html]
* Unzip (unzip -q solr-7.5.0.zip)
* set java home in solr.cmd (Please set JAVA_HOME to a valid JRE / JDK directory)
{{{
set JAVA_HOME=G:\lang\Solr\OpenJDK8u192-b12
}}}
* Run, this starts a configuration wizard - follow instructions
{{{
./bin/solr start -e cloud 
}}}

{{{
solr start|stop|restart|healthcheck|create|create_core|create_collection|delete|version|zk|auth|assert|config] 
solr start -c -m 1g -z localhost:2181 -a "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044"
solr start -help > -h host|-p port|-d dir(server)|-m memory|-s dir(solr.solr.home)|-t dir(solr.data.home)|-v (verbose log)
}}}
* [Indexing|http://lucene.apache.org/solr/guide/7_5/indexing-and-basic-data-operations.html] files for your collection (-Dc) in folder example/exampledocs
{{{
Linux: solr-7.5.0:$ bin/post -c techproducts example/exampledocs/*
Windows: java -jar -Dc=techproducts -Dauto example\exampledocs\post.jar example\exampledocs\*
}}}