 5720844fcd
			
		
	
	
		5720844fcd
		
	
	
	
	
		
			
			We have built up detailed documentation of the *settings* and the *engines* over the past few years. However, this documentation was still spread over various chapters and was difficult to navigate in its entirety. This patch rearranges the Settings & Engines documentation for better readability. To review new ordered docs:: make docs.clean docs.live Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
		
			
				
	
	
		
			118 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. _settings.yml:
 | |
| 
 | |
| ================
 | |
| ``settings.yml``
 | |
| ================
 | |
| 
 | |
| This page describe the options possibilities of the :origin:`searx/settings.yml`
 | |
| file.
 | |
| 
 | |
| .. sidebar:: Further reading ..
 | |
| 
 | |
|    - :ref:`use_default_settings.yml`
 | |
|    - :ref:`search API`
 | |
| 
 | |
| .. contents::
 | |
|    :depth: 2
 | |
|    :local:
 | |
|    :backlinks: entry
 | |
| 
 | |
| .. _settings location:
 | |
| 
 | |
| settings.yml location
 | |
| =====================
 | |
| 
 | |
| The initial ``settings.yml`` we be load from these locations:
 | |
| 
 | |
| 1. the full path specified in the ``SEARXNG_SETTINGS_PATH`` environment variable.
 | |
| 2. ``/etc/searxng/settings.yml``
 | |
| 
 | |
| If these files don't exist (or are empty or can't be read), SearXNG uses the
 | |
| :origin:`searx/settings.yml` file.  Read :ref:`settings use_default_settings` to
 | |
| see how you can simplify your *user defined* ``settings.yml``.
 | |
| 
 | |
| 
 | |
| 
 | |
| .. _settings use_default_settings:
 | |
| 
 | |
| use_default_settings
 | |
| ====================
 | |
| 
 | |
| .. sidebar:: ``use_default_settings: true``
 | |
| 
 | |
|    - :ref:`settings location`
 | |
|    - :ref:`use_default_settings.yml`
 | |
|    - :origin:`/etc/searxng/settings.yml <utils/templates/etc/searxng/settings.yml>`
 | |
| 
 | |
| The user defined ``settings.yml`` is loaded from the :ref:`settings location`
 | |
| and can relied on the default configuration :origin:`searx/settings.yml` using:
 | |
| 
 | |
|  ``use_default_settings: true``
 | |
| 
 | |
| ``server:``
 | |
|   In the following example, the actual settings are the default settings defined
 | |
|   in :origin:`searx/settings.yml` with the exception of the ``secret_key`` and
 | |
|   the ``bind_address``:
 | |
| 
 | |
|   .. code:: yaml
 | |
| 
 | |
|     use_default_settings: true
 | |
|     server:
 | |
|         secret_key: "ultrasecretkey"   # change this!
 | |
|         bind_address: "0.0.0.0"
 | |
| 
 | |
| ``engines:``
 | |
|   With ``use_default_settings: true``, each settings can be override in a
 | |
|   similar way, the ``engines`` section is merged according to the engine
 | |
|   ``name``.  In this example, SearXNG will load all the default engines, will
 | |
|   enable the ``bing`` engine and define a :ref:`token <private engines>` for
 | |
|   the arch linux engine:
 | |
| 
 | |
|   .. code:: yaml
 | |
| 
 | |
|     use_default_settings: true
 | |
|     server:
 | |
|       secret_key: "ultrasecretkey"   # change this!
 | |
|     engines:
 | |
|       - name: arch linux wiki
 | |
|         tokens: ['$ecretValue']
 | |
|       - name: bing
 | |
|         disabled: false
 | |
| 
 | |
| 
 | |
| ``engines:`` / ``remove:``
 | |
|   It is possible to remove some engines from the default settings. The following
 | |
|   example is similar to the above one, but SearXNG doesn't load the the google
 | |
|   engine:
 | |
| 
 | |
|   .. code:: yaml
 | |
| 
 | |
|     use_default_settings:
 | |
|       engines:
 | |
|         remove:
 | |
|           - google
 | |
|     server:
 | |
|       secret_key: "ultrasecretkey"   # change this!
 | |
|     engines:
 | |
|       - name: arch linux wiki
 | |
|         tokens: ['$ecretValue']
 | |
| 
 | |
| ``engines:`` / ``keep_only:``
 | |
|   As an alternative, it is possible to specify the engines to keep. In the
 | |
|   following example, SearXNG has only two engines:
 | |
| 
 | |
|   .. code:: yaml
 | |
| 
 | |
|     use_default_settings:
 | |
|       engines:
 | |
|         keep_only:
 | |
|           - google
 | |
|           - duckduckgo
 | |
|     server:
 | |
|       secret_key: "ultrasecretkey"   # change this!
 | |
|     engines:
 | |
|       - name: google
 | |
|         tokens: ['$ecretValue']
 | |
|       - name: duckduckgo
 | |
|         tokens: ['$ecretValue']
 |