| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 | ====================Local Search Engines====================.. sidebar:: further read   - `Comparison to alternatives     <https://docs.meilisearch.com/learn/what_is_meilisearch/comparison_to_alternatives.html>`_Administrators might find themselves wanting to integrate locally running searchengines.  The following ones are supported for now:* `Elasticsearch`_* `Meilisearch`_* `Solr`_Each search engine is powerful, capable of full-text search.  All of the enginesabove are added to ``settings.yml`` just commented out, as you have to``base_url`` for all them.Please note that if you are not using HTTPS to access these engines, you have to enableHTTP requests by setting ``enable_http`` to ``True``.Furthermore, if you do not want to expose these engines on a public instance, youcan still add them and limit the access by setting ``tokens`` as described insection :ref:`private engines`... _engine meilisearch:MeiliSearch===========.. sidebar:: info   - :origin:`meilisearch.py <searx/engines/meilisearch.py>`   - `MeiliSearch <https://www.meilisearch.com>`_   - `MeiliSearch Documentation <https://docs.meilisearch.com/>`_   - `Install MeiliSearch     <https://docs.meilisearch.com/learn/getting_started/installation.html>`_MeiliSearch_ is aimed at individuals and small companies.  It is designed forsmall-scale (less than 10 million documents) data collections.  E.g. it is greatfor storing web pages you have visited and searching in the contents later.The engine supports faceted search, so you can search in a subset of documentsof the collection.  Furthermore, you can search in MeiliSearch_ instances thatrequire authentication by setting ``auth_token``.Here is a simple example to query a Meilisearch instance:.. code:: yaml  - name: meilisearch    engine: meilisearch    shortcut: mes    base_url: http://localhost:7700    index: my-index    enable_http: true.. _engine elasticsearch:Elasticsearch=============.. sidebar:: info   - :origin:`elasticsearch.py <searx/engines/elasticsearch.py>`   - `Elasticsearch <https://www.elastic.co/elasticsearch/>`_   - `Elasticsearch Guide     <https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html>`_   - `Install Elasticsearch     <https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html>`_Elasticsearch_ supports numerous ways to query the data it is storing.  At themoment the engine supports the most popular search methods (``query_type``):- ``match``,- ``simple_query_string``,- ``term`` and- ``terms``.If none of the methods fit your use case, you can select ``custom`` query typeand provide the JSON payload to submit to Elasticsearch in``custom_query_json``.The following is an example configuration for an Elasticsearch_ instance withauthentication configured to read from ``my-index`` index... code:: yaml  - name: elasticsearch    shortcut: es    engine: elasticsearch    base_url: http://localhost:9200    username: elastic    password: changeme    index: my-index    query_type: match    # custom_query_json: '{ ... }'    enable_http: true.. _engine solr:Solr====.. sidebar:: info   - :origin:`solr.py <searx/engines/solr.py>`   - `Solr <https://solr.apache.org>`_   - `Solr Resources <https://solr.apache.org/resources.html>`_   - `Install Solr <https://solr.apache.org/guide/installing-solr.html>`_Solr_ is a popular search engine based on Lucene, just like Elasticsearch_.  Butinstead of searching in indices, you can search in collections.This is an example configuration for searching in the collection``my-collection`` and get the results in ascending order... code:: yaml  - name: solr    engine: solr    shortcut: slr    base_url: http://localhost:8983    collection: my-collection    sort: asc    enable_http: trueAcknowledgment==============This development was sponsored by `Search and Discovery Fund<https://nlnet.nl/discovery>`_ of `NLnet Foundation <https://nlnet.nl/>`_.
 |