Searx oder SearXNG: Was sollten Sie installieren?
Searx wurde seit April 2023 nicht mehr gewartet. Prüfen Sie den Projektstatus und erfahren Sie, was sich bei Konfiguration, Bot-Schutz und Paketnamen ändert.
Searx oder SearXNG: Welche Variante sollten Sie installieren?
Searx und SearXNG sind zwei verschiedene Projekte mit fast identischem Namen. Nur eines davon erhält noch Fehlerbehebungen. Installieren Sie SearXNG. Für das ursprüngliche Searx wurde seit April 2023 kein Code mehr eingereicht. Die eigene README bringt es in einem Satz auf den Punkt: „Searx wird nicht mehr gewartet.“
Damit besteht ein praktisches und kein philosophisches Problem. Die beiden Projekte verwenden denselben Screenshot, den größten Teil einer Konfigurationsdatei und die Hälfte des Namens. Deshalb wirkt eine Anleitung für das eine Projekt so, als würde sie auch für das andere gelten. Das ist nicht der Fall. Die Einstellungsdatei befindet sich an einer anderen Stelle, der Bot-Schutz ist neu, und der Paketname ist in aktuellen Ubuntu-Versionen nicht mehr vorhanden. Im Folgenden werden die Unterschiede selbst, die Befehle zur Prüfung des Status und die Änderungen für den Betrieb einer eigenen Instanz beschrieben.
Was Searx ist und woher SearXNG stammt
Searx ist eine Metasuchmaschine. Sie führt keinen eigenen Index. Sie nimmt Ihre Suchanfrage entgegen, leitet sie an andere Suchdienste wie Bing, DuckDuckGo oder Wikipedia weiter und fasst die Ergebnisse anschließend auf einer gemeinsamen Ergebnisseite zusammen. Der Vorteil besteht darin, dass diese Dienste die Adresse des Servers und nicht Ihre Adresse sehen. Der Nachteil ist der Wartungsaufwand. Jede Suchmaschine ist ein kleines Stück Code, das HTML oder eine API eines anderen Dienstes verarbeitet. Deshalb funktioniert eine Suchmaschine nicht mehr, sobald sich der vorgelagerte Dienst ändert. Eine Metasuchmaschine ist nur so zuverlässig wie die Personen, die ihre Suchmaschinenmodule pflegen.
Das Repository searx wurde im Oktober 2013 erstellt. Im April 2021 startete ein ehemaliger Maintainer SearXNG als Fork davon. Das Kürzel "NG" steht für next generation. Die README-Datei von Searx beschreibt beide Projekte direkt nebeneinander. Diese Beschreibung ist weiterhin die klarste Zusammenfassung der Aufspaltung:
SearxNG ist ein Fork von searx, der von einem ehemaligen Maintainer von searx erstellt wurde.
SearxNG verwendet Rolling Releases, aktualisiert Abhängigkeiten häufiger und behebt Fehler in Suchmaschinen schneller.
Der Streit hinter dem Fork betraf die Diagnosefunktionen. Searx behandelte Nutzungsdaten als etwas, das eine Instanz nicht speichern sollte. Die Standardeinstellungen bringen das ausdrücklich zum Ausdruck: enable_stats: False # activate /stats page - note: it may leak usage data. SearXNG entschied sich für den entgegengesetzten Ansatz und liefert enable_metrics: true standardmäßig aus. Diese Metriken füllen die Balken für die Antwortzeit und die Fehlerseiten, anhand derer sich eine defekte Suchmaschine leicht finden und reparieren lässt. Beide Positionen sind vertretbar. Nur eine davon führte dazu, dass weiterhin Code veröffentlicht wurde.
Ist Searx tot? So prüfen Sie es selbst
„Tot“ ist kein Status, den GitHub meldet. Lesen Sie daher die beiden vorhandenen Signale und entscheiden Sie selbst. Das erste Signal ist, ob das Repository archiviert wurde und wann zuletzt ein Push erfolgt ist.
curl -s https://api.github.com/repos/searx/searx | jq -r '.archived, .pushed_at'
curl -s https://api.github.com/repos/searxng/searxng | jq -r '.archived, .pushed_at'Am 10. Oktober 2026 gibt der erste Befehl false und 2026-05-14T10:02:22Z aus. Der zweite gibt false und einen aktuellen Zeitstempel aus, normalerweise vom letzten oder vorletzten Tag. Achten Sie auf den ersten Wert. Das Repository searx ist nicht archiviert, und niemand hat es gesperrt. Deshalb kommt diese Frage immer wieder auf.
pushed_at ist allein ein schwaches Signal, weil sich der Wert bereits durch einen Push in einen beliebigen Branch ändert, auch durch eine einzeilige Dokumentationsänderung. Lesen Sie stattdessen die Commit-Liste.
curl -s 'https://api.github.com/repos/searx/searx/commits?per_page=5' \
| jq -r '.[] | .commit.committer.date[:10] + " " + (.commit.message | split("\n")[0])'Am 10. Oktober 2026 lautet die Ausgabe:
2026-05-14 [doc] add hister reference
2023-09-07 Searx is no longer maintained
2023-04-05 Fix quoting issue in search_operator plugin (#3479)
2023-04-04 Bump pallets-sphinx-themes from 2.0.2 to 2.0.3 (#3450)
2023-04-04 Update searx.data - update_wikidata_units.py (#3454)Lesen Sie die Liste von unten nach oben. Die reguläre Entwicklung endet im April 2023. Der Commit vom September 2023 stammt von den Maintainer, die den Hinweis in die README geschrieben haben. Der einzige spätere Commit betrifft die Dokumentation. Der ursprüngliche Autor wechselte zu Hister, einem Suchwerkzeug, das von Ihnen ausgewählte Seiten und Dateien indiziert, statt andere Suchmaschinen abzufragen. Das ist ein anderes Konzept und sinnvoll, wenn Sie eigentlich eine persönliche Suchmaschine für Ihre eigenen Inhalte möchten.
Das zweite Signal ist die Paketierung. Von ihr hängen die meisten älteren Tutorials stillschweigend ab.
- PyPI enthält zwanzig
searx-Releases, von 0.1.2 im Januar 2014 bis 0.17.0 im Juli 2020. Alle sind weiterhin herunterladbar.pip install searxist erfolgreich und liefert das neueste davon, 0.17.0. Dieser Code stammt aus den neun Monaten vor der Abspaltung. - Debian veröffentlichte searx 1.1.0 in Debian 12 (bookworm) und führt es weiterhin in unstable. Im Oktober 2023 wurde es aus testing entfernt. Debian 13 (trixie) enthält daher überhaupt kein searx-Paket.
- Ubuntu veröffentlichte es zuletzt in 22.04, in Version 1.0.0. Unter Ubuntu 24.04 endet
sudo apt install searxmitE: Unable to locate package searx. - searx.space, das öffentliche Verzeichnis von Instanzen, auf das das Projekt stets verwiesen hat, listet inzwischen SearXNG-Instanzen.
Der ehrliche Status lautet daher: Der Code ist öffentlich, läuft weiterhin, und Sie können ihn heute klonen und starten. Was Sie nicht erhalten, sind Fehlerbehebungen für Suchmaschinen oder Sicherheitsupdates. Bei einer Metasuchmaschine ist das jedoch die gesamte Aufgabe. Suchmaschinen ändern sich nach dem Zeitplan ihrer Betreiber. Eine nicht gewartete Instanz liefert jeden Monat weniger Ergebnisse, ohne dass jemand den Server anfasst.
Was sich durch den Fork für eine neue Instanz geändert hat
Die Einstellungsdatei wurde verschoben und ist jetzt ein Overlay
Bei Searx haben Sie searx/settings.yml im Quellbaum bearbeitet. Bei SearXNG liegt die Datei unter /etc/searxng/settings.yml. Der Prozess findet sie über die Umgebungsvariable SEARXNG_SETTINGS_PATH. Die Vorlage, die der Installer dorthin kopiert, ist kurz:
use_default_settings: true
general:
debug: false
instance_name: "SearXNG"
search:
safe_search: 2
autocomplete: 'duckduckgo'
formats:
- html
server:
# Is overwritten by ${SEARXNG_SECRET}
secret_key: "ultrasecretkey"
limiter: true
image_proxy: true
valkey:
# URL to connect valkey database. Is overwritten by ${SEARXNG_VALKEY_URL}.
url: valkey://localhost:6379/0use_default_settings: true ist die Zeile, die Ihre Arbeitsweise ändert. Damit enthält Ihre Datei nur Überschreibungen. Jeder ausgelassene Schlüssel wird aus den im Paket enthaltenen Standardwerten übernommen. Ohne diese Zeile muss Ihre Datei die gesamte Konfiguration für jede Engine beschreiben. So entsteht eine Instanz, die sauber startet und keine Ergebnisse findet. Eine alte Searx-Einstellungsdatei, die in diesen Pfad kopiert wird, ist eine vollständige Konfiguration mit anderen Schlüsselnamen. Dadurch wird der zweite Weg gewählt, und dieser schlägt fehl.
Der geheime Schlüssel beendet den Prozess
sudo -H sed -i -e "s/ultrasecretkey/$(openssl rand -hex 16)/g" \
"/etc/searxng/settings.yml"Führen Sie diesen Befehl einmal nach dem Kopieren der Vorlage aus. Wenn Sie ihn überspringen, schreibt SearXNG eine Zeile ins Log und beendet sich mit Status 1. Der Grund ist, dass webapp.py den Schlüssel vor dem Bereitstellen von Diensten mit dem Vorlagenwert vergleicht:
server.secret_key is not changed. Please use something else instead of ultrasecretkey.Die Prüfung wird übersprungen, wenn general.debug den Wert true hat. Daher kann eine Instanz in einer Debug-Sitzung problemlos laufen und anschließend unter systemd oder in einem Container den Start verweigern. Wenn ein Container mit dieser Zeile in docker compose logs in einer Neustartschleife läuft, wird diese Prüfung ausgelöst. Das Image ist nicht defekt.
Der Limiter ist neu und benötigt Valkey
Searx hatte keine anwendungsinterne Ratenbegrenzung. Öffentliche Searx-Instanzen setzten separate Dienste davor: filtron für die Filterung von Anfragen und morty für die Weiterleitung von Ergebnisinhalten. In keinem der beiden Repositories wurde seit Januar 2023 ein Commit erstellt. Der letzte Commit von filtron stammt aus diesem Monat, der letzte von morty aus April 2021.
SearXNG übernimmt diese Aufgaben selbst. Ratenbegrenzung und Bot-Erkennung werden vom Limiter bereitgestellt und mit server.limiter aktiviert. In den ausgelieferten Standardwerten ist er false. In der Vorlage des Installers ist er true. Für die Zähler benötigt er eine Valkey-Datenbank. Valkey ist ein Fork von Redis. Ubuntu 24.04 stellt dafür Pakete bereit:
sudo apt install -y valkey-serverserver:
limiter: true
valkey:
url: valkey://localhost:6379/0Anleitungen, die vor dieser Umbenennung geschrieben wurden, konfigurieren stattdessen einen Block redis:. Übernehmen Sie daher den Schlüsselnamen aus der aktuellen Dokumentation des Limiters. Die Feinabstimmung erfolgt in einer zweiten Datei, /etc/searxng/limiter.toml. Mit server.public_instance: true aktivieren Sie die strengere Bot-Erkennung, die eine öffentliche Instanz benötigt, einschließlich der Methode mit Link-Token. Sichtbar ist das daran, dass einige Anfragen mit HTTP 429 statt mit Ergebnissen beantwortet werden. Das betrifft auch eigene Anfragen, wenn Sie die Instanz per Skript ansprechen. Dazu gibt es eine eigene Seite: warum eine SearXNG-Instanz mit 429 Too Many Requests antwortet.
Engines setzen sich selbst aus, und die Timeouts sind lang
Wenn ein Upstream-Dienst mit einem CAPTCHA oder einer Seite zur Ratenbegrenzung antwortet, löst SearXNG eine typisierte Ausnahme aus. Danach fragt es diese Engine für eine bestimmte Zeit nicht mehr ab, statt sie durch weitere Versuche zu blockieren. Die Standardwerte stehen in searx/settings.yml unter search.suspended_times. Dies sind die 6 veröffentlichten Werte mit Stand Oktober 2026:
Die Daten hinter diesem Diagramm
[
{
"label": "SearxEngineAccessDenied",
"suspend_seconds": "180"
},
{
"label": "SearxEngineCaptcha",
"suspend_seconds": "3,600"
},
{
"label": "SearxEngineTooManyRequests",
"suspend_seconds": "180"
},
{
"label": "cf_SearxEngineCaptcha",
"suspend_seconds": "1,296,000"
},
{
"label": "cf_SearxEngineAccessDenied",
"suspend_seconds": "86,400"
},
{
"label": "recaptcha_SearxEngineCaptcha",
"suspend_seconds": "604,800"
}
]Eine normale Antwort mit verweigertem Zugriff setzt diese Engine für 180 Sekunden aus. Ein CAPTCHA setzt sie für 3,600 Sekunden aus. Ein Cloudflare-CAPTCHA setzt sie für 1,296,000 Sekunden aus, also für fünfzehn Tage. Ein Google-reCAPTCHA setzt sie für 604,800 Sekunden aus, also für eine Woche. Die langen Werte sind absichtlich gewählt. Eine erneute Anfrage, nachdem ein Dienst die Adresse bereits markiert hat, kann dazu führen, dass die IP-Adresse der Instanz dauerhaft blockiert wird.
Während eine Engine ausgesetzt ist, überspringt die Ergebnisseite sie. Sie meldet die Engine außerdem im Seitenleistenblock „Nachrichten von den Suchmaschinen“. /stats/errors listet auf, was fehlgeschlagen ist. Eine neue Instanz mit wenigen Ergebnissen zeigt normalerweise dieses Verhalten. Die Installation ist nicht defekt.
Die JSON-API ist standardmäßig deaktiviert
Der ausgelieferte Standardwert ist formats: [html] und sonst nichts. Daher ist die API, die jedes Skript benötigt, geschlossen, bis Sie sie öffnen.
curl -s -o /dev/null -w '%{http_code}\n' \
'http://127.0.0.1:8888/search?q=test&format=json'Dieser Befehl gibt 403 aus. Der Suchpfad ruft flask.abort(403) auf, wenn das angeforderte Format nicht in search.formats aufgeführt ist. Fügen Sie das Format hinzu und starten Sie den Dienst neu:
search:
formats:
- html
- jsonDie Searx-Einstellungsdatei enthält überhaupt keinen Schlüssel formats. Ihre JSON-Ausgabe war daher einfach ohne weitere Konfiguration verfügbar. Jedes Skript und jeder Codeschnipsel aus dieser Zeit setzt dasselbe Verhalten voraus. Das Fehlerbild ist eine leere 403-Antwort ohne Erklärung. Wenn Sie eine Instanz in Werkzeuge integrieren, beginnt einem Agenten einen SearXNG-Endpunkt für Suchanfragen bereitzustellen mit dieser einen Einstellung.
Warum kopierte Searx-Anleitungen fehlschlagen
Jede dieser Zeilen steht in Anleitungen, die weiterhin weit oben in den Suchergebnissen erscheinen. Bei einer aktuellen Installation schlägt sie jedoch fehl oder führt in die Irre.
sudo apt install searxendet unter Ubuntu 24.04 beiE: Unable to locate package searx, weil das Paket zuletzt in 22.04 veröffentlicht wurde.pip install searxist erfolgreich und installiert Version 0.17.0 aus dem Juli 2020. Es gibt keinen Hinweis darauf, dass diese Version älter als der Fork ist.git clone https://github.com/asciimoo/searxfunktioniert weiterhin, weil GitHub den alten Namen des Eigentümers umleitet. Der Befehl checkt den aktuellen Standard-Branch aus. Dort liegt ein Dokumentations-Commit vom Mai 2026 auf Anwendungscode, der seit April 2023 nicht mehr geändert wurde.- Schritte, die
searx/settings.ymlim Quellbaum bearbeiten, ändern bei SearXNG nichts, weil SearXNG/etc/searxng/settings.ymlliest. - Schritte zur Installation von filtron oder morty bauen Teile nach, die SearXNG bereits enthält.
- Eine
redis:-URL für den Limiter verwendet einen Namen, der gegenüber dem aktuellenvalkey:-Schlüssel um eine Umbenennung veraltet ist.
Auch SearXNG-Anleitungen veralten. Die Clone-URL ist die schnellste Möglichkeit, ihr Alter zu erkennen. Die Compose-Dateien lagen früher in einem separaten searxng-docker-Repository. Dieses Repository ist inzwischen archiviert. Sein letzter Push erfolgte im März 2026. Die Dateien wurden nach container/ im Haupt-Repository verschoben. Der aktuelle Container-Schnellstart aus der Dokumentation lautet:
mkdir -p ./searxng/core-config/
cd ./searxng/
curl -fsSL \
-O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml \
-O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example
cp -i .env.example .env
nano .env
docker compose up -dBearbeiten Sie .env vor dem letzten Befehl. Das Image bildet Umgebungsvariablen auf Einstellungsschlüssel ab. Dadurch wird SEARXNG_SECRET zu server.secret_key und SEARXNG_BASE_URL zu server.base_url. Die skriptbasierte Installation auf dem Host verwendet einen anderen Weg mit demselben Ergebnis:
git clone https://github.com/searxng/searxng.git searxng
cd searxng
sudo -H ./utils/searxng.sh install allDabei werden der Benutzer searxng, die virtuelle Umgebung unter /usr/local/searxng und der uWSGI-Dienst erstellt. Dies ist die Referenzkonfiguration in der SearXNG-Dokumentation. Die ausführlichere Anleitung für diesen Weg finden Sie unter SearXNG auf dem eigenen VPS installieren.
Öffentliche Instanz oder eigene Instanz
Eine öffentliche Instanz ist ein Server eines anderen Betreibers, der Ihre TLS-Verbindung (Transport Layer Security) terminiert. Die dort laufende Software kann Ihre Suchanfrage daher im Klartext lesen. Die eigene Dokumentation von SearXNG formuliert die Vertrauensfrage eindeutig: Sie müssen dem Administrator vertrauen. Sie können nicht wissen, ob Anfragen protokolliert, aggregiert oder an Dritte weitergegeben werden. Die sichtbare Liste ist kurz und vollständig. Der Stack des Betreibers kann den Text der Suchanfrage, den Zeitpunkt, die IP-Adresse, von der die Anfrage eingeht, den Browser User-Agent und das Preference-Cookie mit Ihren Einstellungen sehen. Der Betreiber kontrolliert außerdem den Code. Jeder von ihm eingespielte Patch läuft daher bei jeder Suche, die Sie dort ausführen.
Eine Standardeinstellung erleichtert versehentliches Protokollieren. Searx übermittelte Suchanfragen als POST. SearXNG verwendet method: "GET". In der Dokumentation wird dazu angemerkt, dass POST Suchanfragen aus dem Browserverlauf heraushält, aber zu Problemen bei der Bedienung führt. Bei GET steht die Suchanfrage in der Request-Zeile. Dadurch landet sie standardmäßig im Access-Log des Reverse Proxy und im Browserverlauf. Das ist normales Verhalten eines Webservers. Sie sollten dies wissen, bevor Sie entscheiden, auf wessen Server die Anfrage verarbeitet wird.
Der Betrieb einer eigenen Instanz verlagert das Vertrauen, statt es zu beseitigen. Sie kontrollieren den Code und die Logs. Wenn Sie für eine Einzelbenutzer-Instanz überhaupt keinen Hostnamen und kein TLS-Zertifikat veröffentlichen möchten, hält der Zugriff über einen v3-Onion-Dienst die Instanz aus dem öffentlichen DNS heraus. Sie können trotzdem von überall darauf zugreifen. Im Gegenzug sehen die Upstream-Engines für alle Ihre Suchanfragen dieselbe Adresse. Bei einer Einzelbenutzer-Instanz lässt sich jede Anfrage Ihnen zuordnen, statt in der Menge unterzugehen. Eine stark genutzte öffentliche Instanz bietet diese Menge und nimmt Ihnen die Logs ab. Entscheiden Sie, welche Eigenschaft für Sie wichtiger ist. Wenn Sie zuerst die vollständige Risikoliste durchgehen möchten, hilft die Frage, ob SearXNG sicher zu verwenden ist. Für den Standortverlauf gilt dieselbe Überlegung, allerdings mit höheren Risiken. Ein Telefon, das den ganzen Tag seine Position meldet, verrät mehr als jedes Suchprotokoll. Wenn Sie diese Daten auf einem von Ihnen kontrollierten Server speichern möchten, ist der Vergleich selbst gehosteter Standort-Tracker ein guter Ausgangspunkt.
Ein praktischer Hinweis für einen VPS. Adressbereiche aus Rechenzentren werden schneller markiert als Heimanschlüsse. Deshalb muss eine neue Instanz bei einigen Suchmaschinen bereits bei den ersten Suchanfragen CAPTCHAs lösen. Das ist das oben beschriebene Sperrverhalten und kein Konfigurationsfehler. Wenn dieselben Suchmaschinen auch nach Ablauf der Sperre weiterhin blockiert sind, erspart Ihnen das Lesen der tatsächlichen Fehlermeldung vor jeder Änderung das Raten bei der Fehlersuche.
Wenn Sie bereits eine Searx-Instanz betreiben
Am Tag, an dem Sie dies lesen, fällt nichts aus. Der Server arbeitet weiter, bis eine spätere Änderung im Upstream eine weitere Suchmaschine unbrauchbar macht. Danach bleibt sie defekt. Planen Sie den Wechsel, und übernehmen Sie die Konfigurationsdatei nicht. Beginnen Sie mit der SearXNG-Vorlage. Fügen Sie anschließend nur die Einstellungen wieder hinzu, die Sie bewusst geändert haben: den Instanznamen, safe_search, die namentlich aktivierten oder deaktivierten Suchmaschinen sowie die Standardwerte Ihrer Benutzeroberfläche. Suchmaschinennamen und Optionen wurden im Fork geändert. Prüfen Sie daher jede Einstellung anhand der aktuellen Dokumentation, statt anzunehmen, dass der Schlüssel weiterhin vorhanden ist. Für Filtron-Regeln und eine morty-URL gibt es kein Gegenstück, weil diese Aufgaben in die Anwendung verschoben wurden.
Starten Sie die neue Instanz auf einem anderen Port, während die alte Instanz weiterhin läuft. Sie funktioniert, wenn die Startseite den Statuscode 200 zurückgibt, eine Suche Ergebnisse von mehr als einer Suchmaschine liefert und /stats/errors entweder leer ist oder nur Fehler auflistet, die Sie nachvollziehen können. Ändern Sie anschließend den Reverse Proxy auf die neue Instanz, und stoppen Sie den alten Dienst.
FAQ
Ist Searx 2026 tot?
Das Repository ist nicht archiviert. Sie können es daher weiterhin klonen. Das Projekt wird jedoch nicht gepflegt. Der letzte Code-Commit wurde im April 2023 veröffentlicht. In der README steht außerdem: „Searx wird nicht mehr gepflegt.“ Prüfen Sie dies selbst mit curl -s https://api.github.com/repos/searx/searx | jq -r '.pushed_at' und lesen Sie anschließend die aktuellen Commit-Nachrichten. Ein Push-Datum kann auch durch eine Änderung an der Dokumentation entstehen. Bei einer Metasuchmaschine bedeutet fehlende Pflege, dass die Ergebnisse mit der Zeit schlechter werden. Jedes Suchmaschinenmodul hängt von einer externen Website ab, die sich laufend ändert.
Kann ich Searx noch mit apt oder pip installieren?
Auf aktuellen Systemen nicht. Wo es möglich ist, ist es außerdem nicht sinnvoll. Ubuntu hat searx zuletzt in 22.04 mit der Version 1.0.0 paketiert. Daher gibt sudo apt install searx unter 24.04 E: Unable to locate package searx zurück. Debian hat 1.1.0 in Debian 12 ausgeliefert und das Paket im Oktober 2023 aus testing entfernt. Debian 13 enthält daher kein Paket. PyPI stellt weiterhin alle searx-Versionen bereit. Die neueste Version ist 0.17.0 vom Juli 2020 und damit älter als der Fork selbst. Installieren Sie stattdessen SearXNG.
Funktioniert meine alte searx settings.yml in SearXNG?
Nein. Übernehmen Sie die Werte, nicht die Datei. SearXNG liest /etc/searxng/settings.yml und erwartet use_default_settings: true am Anfang. Ihre Datei dient daher als Overlay für die mitgelieferten Standardwerte. Eine alte searx-Datei ist eine vollständige Konfiguration mit anderen Schlüsselnamen. Sie enthält weder limiter noch einen valkey-Block oder eine formats-Liste. Beginnen Sie mit der Vorlage unter utils/templates/etc/searxng/settings.yml und fügen Sie Ihre Änderungen einzeln wieder hinzu.
Warum liefert meine eigene SearXNG-Instanz weniger Ergebnisse als eine öffentliche Instanz?
Einige Suchmaschinenmodule sind deaktiviert. Wenn ein Modul mit einem CAPTCHA oder einer Seite zur Ratenbegrenzung antwortet, fragt SearXNG es für eine feste Zeit nicht mehr ab. Diese Zeit reicht von 180 Sekunden bei einer einfachen Ablehnung bis zu 1,296,000 Sekunden bei einem Cloudflare-CAPTCHA. Die Ergebnisseite zeigt dies unter „Nachrichten von den Suchmaschinen“ an. /stats/errors listet die Fehler mit ihren Ursachen auf. Adressen aus Rechenzentren werden früher markiert als private Anschlüsse. Daher tritt das Problem bei einer neuen VPS-Instanz früh auf.
Sollte ich eine öffentliche SearXNG-Instanz verwenden oder selbst eine betreiben?
Betreiben Sie eine eigene Instanz, wenn Sie Kontrolle über den Code und die Logs benötigen und akzeptieren, dass die externen Suchmaschinen dann für alle Ihre Suchanfragen dieselbe Adresse sehen. Verwenden Sie eine öffentliche Instanz, wenn Ihnen die Vermischung Ihrer Anfragen mit denen anderer Benutzer wichtiger ist als die Kenntnis darüber, was protokolliert wird. Auf einer öffentlichen Instanz kann der Betreiber den Abfragetext, den Zeitpunkt, Ihre IP-Adresse und Ihren User-Agent sehen. Außerdem kann er den Code jederzeit ändern. Eine angegebene Protokollierungsrichtlinie lässt sich von außerhalb nicht überprüfen.