Markus Heiser 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							649a8dd577 
							
						 
					 
					
						
						
							
							[fix] cleanup: rename searx leftovers to SearXNG ( #5049 )  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2025-07-26 06:22:46 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Gabaldon 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							01be2612ab 
							
						 
					 
					
						
						
							
							[mod] container: replace uWSGI with Granian ( #4820 )  
						
						... 
						
						
						
						* [mod] container: replace uWSGI with Granian
The configuration in Granian is handled with ENVs, much more convenient and practical for updating. The settings have been tested for over two months in a production instance, being usable on small to somewhat large instances without having to modify anything.
It also removes the patch functions and ENVs abstraction from the entrypoint, this makes it possible to run the container with immutable configuration.
In some setups, It may be desired to have the volumes/files under a specific uid/gid (other than searxng:searxng), if the entrypoint has root permissions it will chown automatically on every start, which may not be desired. Explicitly setting the new ENV `FORCE_OWNERSHIP=false` will prevent ownership from being modified.
No manual migration is necessary **unless** the user has changed the default uWSGI configuration or has a very specific setup.
Closes https://github.com/searxng/searxng/issues/4894 
Closes https://github.com/searxng/searxng/issues/4818 
Closes https://github.com/searxng/searxng/issues/4802 
Supersedes https://github.com/searxng/searxng/pull/4596 
Related https://github.com/searxng/searxng/discussions/4479 
* [mod] docs: add container/granian
All container documentation has been recreated.
A new documentation page has been created for Granian.
* [enh] misc: apply suggestions
Minor documentation changes.
Suggested https://github.com/searxng/searxng/pull/4820#discussion_r2134539259 
Suggested https://github.com/searxng/searxng/pull/4820#discussion_r2134538610 
Suggested https://github.com/searxng/searxng/pull/4820#discussion_r2134827964 
Suggested https://github.com/searxng/searxng/pull/4820#discussion_r2134544300 
Suggested https://github.com/searxng/searxng/pull/4820#discussion_r2149387388 
---------
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Co-authored-by: Ivan Gabaldon <igabaldon@inetol.net>
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2025-07-04 14:35:28 +02:00 
						 
				 
			
				
					
						
							
							
								spalinger 
							
						 
					 
					
						
						
						
						
							
						
						
							1918fb2ea0 
							
						 
					 
					
						
						
							
							[fix] typos/grammar in docs  
						
						
						
						
					 
					
						2023-04-21 06:51:44 +02:00 
						 
				 
			
				
					
						
							
							
								Léon Tiekötter 
							
						 
					 
					
						
						
						
						
							
						
						
							e5323b8aa2 
							
						 
					 
					
						
						
							
							[docs] corrections from @tiekoetter's review  
						
						
						
						
					 
					
						2022-07-30 13:39:35 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							6fbffe9d20 
							
						 
					 
					
						
						
							
							[docs] add section "Migrate and stay tuned!"  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2022-07-30 13:39:35 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							ed8a169029 
							
						 
					 
					
						
						
							
							[doc] update documentation of the installation procedures  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2022-07-30 13:39:35 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							4577444ec4 
							
						 
					 
					
						
						
							
							[docs] Switch from searx to SearXNG  
						
						... 
						
						
						
						Closes: https://github.com/searxng/searxng/issues/450 
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2022-01-17 10:05:13 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							1dae0c0be0 
							
						 
					 
					
						
						
							
							[brand] SearXNG - docs rename links and fix documentation  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-11-18 18:27:26 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							ecb7e73e03 
							
						 
					 
					
						
						
							
							[brand] docs - normalize project name to SearXNG  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-09-13 14:36:24 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							d70ec8826d 
							
						 
					 
					
						
						
							
							[doc] admin manual - describe installation of external plugins  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-06-15 18:00:35 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							28b25185c5 
							
						 
					 
					
						
						
							
							[brand] searxng -- fix links to issue tracker & WEB-GUI  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-04-25 14:25:08 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							3aa153f08e 
							
						 
					 
					
						
						
							
							[fix doc] manage.sh update_packages does not exists anymore  
						
						... 
						
						
						
						Reported-by: https://github.com/searx/searx/issues/2776 
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-04-24 17:03:10 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							9485179064 
							
						 
					 
					
						
						
							
							[mod] move brand options from Makefile to settings.yml  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2021-01-11 22:12:38 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							dc94a1d4c0 
							
						 
					 
					
						
						
							
							[doc] add a tip about how to brand and stash a searx instance setup  
						
						... 
						
						
						
						BTW: drop a trailing whitespace
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-12-13 15:20:33 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							c8d2b19c85 
							
						 
					 
					
						
						
							
							[doc] document why to use sudoer to run intsallation scripts  
						
						... 
						
						
						
						related to:
- https://gist.github.com/dalf/60450e19b042bd39b9ce470c095d89b3#gistcomment-3263827 
- https://github.com/searx/searx/issues/2013#issuecomment-647132313 
- https://github.com/searx/searx/issues/2017#issuecomment-647700327 
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-12-13 15:19:04 +01:00 
						 
				 
			
				
					
						
							
							
								Alexandre Flament 
							
						 
					 
					
						
						
						
						
							
						
						
							f204e4903d 
							
						 
					 
					
						
						
							
							[fix] migration from github.com/asciimoo/searx to github.com/searx/searx : fix URLs  
						
						
						
						
					 
					
						2020-09-28 16:44:14 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							26a3a7d523 
							
						 
					 
					
						
						
							
							[docs] installation: add note to update OS before install searx  
						
						... 
						
						
						
						see: https://github.com/asciimoo/searx/pull/1803#issuecomment-618456661 
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-04-28 14:44:28 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							ebde9d10fd 
							
						 
					 
					
						
						
							
							docs: proofreading of all the installation topics  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-04-09 15:04:23 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							eb0d4646d8 
							
						 
					 
					
						
						
							
							docs: rework of chapter "Install with apache"  
						
						... 
						
						
						
						BTW: normalize installation-nginx.rst 
						
						
					 
					
						2020-04-06 17:59:06 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							84daf9999c 
							
						 
					 
					
						
						
							
							docs: remove PR  #1803  hints  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-04-04 08:36:48 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							cbc08fdc26 
							
						 
					 
					
						
						
							
							docs: describe uwsgi setup of all suported distributions  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-03-04 19:56:40 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							c3e4753ce9 
							
						 
					 
					
						
						
							
							docs: generic documentation from the installation scripts  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-03-02 19:00:19 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							0bfc61dbe9 
							
						 
					 
					
						
						
							
							tooling box: misc fixes from lxc tests  
						
						... 
						
						
						
						Tested by:
  sudo -H ./utils/lxc.sh build containers
  sudo -H ./utils/lxc.sh cmd /share/searx/utils/searx.sh    install all
  sudo -H ./utils/lxc.sh cmd /share/searx/utils/filtron.sh  install all
  sudo -H ./utils/lxc.sh cmd /share/searx/utils/morty.sh    install all
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-02-16 22:29:06 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							ed4cb4f160 
							
						 
					 
					
						
						
							
							tooling box: varius fix from tests  
						
						
						
						
					 
					
						2020-02-08 13:24:08 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							eedd63ccd5 
							
						 
					 
					
						
						
							
							docs: revision of the installation instructions  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-02-04 16:42:13 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							9278f0fb45 
							
						 
					 
					
						
						
							
							docs: add some documentation about the tooling box ./utils/*  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2020-02-04 13:13:17 +01:00 
						 
				 
			
				
					
						
							
							
								Robin Schneider 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3e5a3ee4e4 
							
						 
					 
					
						
						
							
							Let Nginx deliver static files directory in all examples  
						
						
						
						
					 
					
						2019-12-31 14:43:14 +01:00 
						 
				 
			
				
					
						
							
							
								Robin Schneider 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							088337295a 
							
						 
					 
					
						
						
							
							Simply Nginx example by using alias directive for subdirectory URL  
						
						... 
						
						
						
						We explicitly specific the static directory here using alias to allow to
host from a other subdirectory than "searx" which just so happens to
match the source code directory. 
						
						
					 
					
						2019-12-31 14:41:27 +01:00 
						 
				 
			
				
					
						
							
							
								Robin Schneider 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a1d9c81915 
							
						 
					 
					
						
						
							
							Fix Nginx subdir URL install docs which allowed download of settings.yml  
						
						... 
						
						
						
						Closes : #1617 
There is an issue with the setup example in https://asciimoo.github.io/searx/dev/install/installation.html#installation  for subdirectory URL deployments:
```nginx
root /usr/local/searx;
location = /searx { rewrite ^ /searx/; }
        try_files $uri @searx;
}
location @searx {
        uwsgi_param SCRIPT_NAME /searx;
        include uwsgi_params;
        uwsgi_modifier1 30;
        uwsgi_pass unix:/run/uwsgi/app/searx/socket;
}
```
`try_files` causes Nginx to search for files in the server root first. If it matches a file, it is returned. Only if no file matched, the request is passed to uwsgi. The worst consequence I can think of is that  `settings.yml` can be downloaded without authentication (where secrets and configuration details are stored).
To fix this, I propose:
```nginx
location = /searx {
        rewrite ^ /searx/;
}
location /searx/static {
}
location /searx {
        uwsgi_param SCRIPT_NAME /searx;
        include uwsgi_params;
        uwsgi_pass unix:/run/uwsgi/app/searx/socket;
}
```
And add
```
route-run = fixpathinfo:
```
to `/etc/uwsgi/apps-available/searx.ini` because `uwsgi_modifier1 30` is apparently deprecated. Ref: https://uwsgi-docs.readthedocs.io/en/latest/Changelog-2.0.11.html#fixpathinfo-routing-action 
I assume this issue exists because some uwsgi upstream docs also use the `try_files` construct (at least I have seen this somewhere in the docs or somewhere else on the Internet but cannot find it right now again).
https://uwsgi-docs.readthedocs.io/en/latest/Nginx.html#hosting-multiple-apps-in-the-same-process-aka-managing-script-name-and-path-info  also warns about this:
> If used incorrectly a configuration like this may cause security problems. For your sanity’s sake, double-triple-quadruple check that your application files, configuration files and any other sensitive files are outside of the root of the static files. 
					
						2019-12-31 14:24:27 +01:00 
						 
				 
			
				
					
						
							
							
								Markus Heiser 
							
						 
					 
					
						
						
						
						
							
						
						
							04eeeb53a1 
							
						 
					 
					
						
						
							
							doc: moved reST sources in the right folder (much clearer)  
						
						... 
						
						
						
						Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> 
						
						
					 
					
						2019-12-12 19:48:42 +01:00