SSD Nodes Learn Hosting plans →
Anleitungen Matt ConnorVon Matt Connor · Aktualisiert 2026-08-29

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 verfügbaren Signale und entscheiden Sie selbst. Das erste ist, ob das Repository archiviert wurde und wann zuletzt ein Push erfolgte.

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 22. August 2026 gibt der erste Befehl false und 2026-05-14T10:02:22Z aus. Der zweite gibt false sowie einen Zeitstempel vom Tag der Ausführung aus. Achten Sie auf den ersten Wert. Das searx-Repository ist nicht archiviert, und niemand hat den Zugriff gesperrt. Deshalb taucht 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 Liste der Commits.

curl -s 'https://api.github.com/repos/searx/searx/commits?per_page=5' \
  | jq -r '.[] | .commit.committer.date[:10] + "  " + (.commit.message | split("\n")[0])'

Im August 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  Bump selenium from 4.7.2 to 4.8.3 (#3490)

Lesen Sie die Liste von unten nach oben. Die reguläre Entwicklung endet im April 2023. Mit dem Commit vom September 2023 haben die Maintainer den Hinweis in die README geschrieben. Der einzige spätere Commit betrifft die Dokumentation, weil der ursprüngliche Autor zu Hister gewechselt ist. Hister ist ein Suchwerkzeug, das von Ihnen ausgewählte Seiten und Dateien indiziert, statt andere Suchmaschinen abzufragen. Das ist ein anderer Ansatz und sinnvoll, wenn Sie tatsächlich eine persönliche Suchmaschine für Ihre eigenen Inhalte benötigen.

Das zweite Signal ist die Paketierung. Von ihr hängen die meisten älteren Tutorials stillschweigend ab.

  • PyPI enthält ein searx-Release, Version 0.17.0, das im Juli 2020 hochgeladen wurde. pip install searx ist erfolgreich und liefert Ihnen Code aus der Zeit neun Monate vor dem Fork.
  • Debian hat searx 1.1.0 mit Debian 12 (bookworm) ausgeliefert 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 hat es zuletzt mit 22.04 in Version 1.0.0 ausgeliefert. Unter Ubuntu 24.04 endet sudo apt install searx mit E: Unable to locate package searx.
  • searx.space, das öffentliche Verzeichnis von Instanzen, auf das das Projekt immer 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. Sie erhalten jedoch keine Fehlerbehebungen für Suchmaschinen und keine Security Updates. Bei einer Metasuchmaschine ist das der gesamte Zweck der Wartung. Suchmaschinen ändern sich nach dem Zeitplan anderer Betreiber. Eine nicht gewartete Instanz liefert jeden Monat weniger Ergebnisse, ohne dass jemand den Server anfasst.

Was sich für eine neue Instanz durch den Fork geändert hat

Die Einstellungsdatei wurde verschoben und ist jetzt ein Overlay

Bei Searx haben Sie searx/settings.yml innerhalb des Quellbaums bearbeitet. Bei SearXNG liegt die Datei unter /etc/searxng/settings.yml, und 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/0

use_default_settings: true ist die Zeile, die Ihre Arbeitsweise ändert. Damit enthält Ihre Datei nur Überschreibungen. Jeder nicht angegebene Schlüssel stammt aus den Standardwerten, die im Paket enthalten sind. Ohne diese Zeile muss Ihre Datei die gesamte Konfiguration für jede einzelne Engine beschreiben. So entsteht eine Instanz, die sauber startet, aber nichts 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 verwendet, und zwar mit schlechten Ergebnissen.

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 aus, nachdem Sie die Vorlage kopiert haben. Wenn Sie ihn überspringen, schreibt SearXNG eine Zeile ins Log und beendet sich mit Status 1, weil webapp.py den Schlüssel vor der Verarbeitung von Anfragen 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. Deshalb 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 Proxy-Verarbeitung von Ergebnissen. In beiden Repositories wurde zuletzt 2023 ein Commit erstellt.

SearXNG übernimmt diese Aufgaben selbst. Ratenbegrenzung und Bot-Erkennung werden durch den Limiter bereitgestellt und mit server.limiter aktiviert. In den ausgelieferten Standardwerten ist er auf false gesetzt, in der Vorlage des Installers auf true. Für seine Zähler benötigt er eine Valkey-Datenbank. Valkey ist ein Fork von Redis, und Ubuntu 24.04 stellt dafür Pakete bereit:

sudo apt install -y valkey-server
server:
  limiter: true

valkey:
  url: valkey://localhost:6379/0

Anleitungen, die vor dieser Umbenennung geschrieben wurden, konfigurieren stattdessen einen Block redis:. Übernehmen Sie deshalb den Schlüsselnamen aus der aktuellen Dokumentation zum Limiter. Die Feineinstellungen stehen in einer zweiten Datei, /etc/searxng/limiter.toml. server.public_instance: true aktiviert 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 Ihre eigenen Anfragen, wenn Sie per Script auf die Instanz zugreifen. 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. Anschließend fragt SearXNG diese Engine für einen festgelegten Zeitraum 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 August 2026:

ChartSearXNG default engine suspension times, in seconds
The data behind this chart
[
  {
    "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 einfache Antwort mit verweigerter Zugriffsberechtigung setzt die 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. Erneute Anfragen, nachdem ein Dienst die Adresse bereits markiert hat, können dazu führen, dass die IP-Adresse der Instanz dauerhaft gesperrt wird.

Während eine Engine ausgesetzt ist, überspringt die Ergebnisseite sie und meldet sie 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 nichts anderes. Die API, die jedes Script verwenden möchte, bleibt daher 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'

Der Befehl gibt 403 aus, weil die Suchroute flask.abort(403) aufruft, 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
    - json

Die Searx-Einstellungsdatei enthält überhaupt keinen Schlüssel formats. Ihre JSON-Ausgabe war daher einfach ohne weitere Konfiguration verfügbar. Jedes Script und jedes Codefragment 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 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 searx bricht unter Ubuntu 24.04 bei E: Unable to locate package searx ab, weil das Paket zuletzt für 22.04 veröffentlicht wurde.
  • pip install searx läuft erfolgreich durch und installiert Version 0.17.0 vom Juli 2020. Es gibt keinen Hinweis darauf, dass diese Version vor der Abspaltung veröffentlicht wurde.
  • git clone https://github.com/asciimoo/searx funktioniert weiterhin, weil GitHub den alten Eigentümernamen weiterleitet. Der Befehl lädt den Quellbaum vom April 2023 herunter.
  • Schritte, die searx/settings.yml im Quellbaum ändern, bewirken bei SearXNG nichts, weil SearXNG /etc/searxng/settings.yml einliest.
  • Schritte zur Installation von filtron oder morty bauen Teile nach, die bereits in SearXNG enthalten sind.
  • Eine redis:-URL für den Limiter verwendet einen Namen, der gegenüber dem aktuellen Schlüssel valkey: 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 wurde im März 2026 archiviert. Seine Dateien wurden in container/ im Hauptrepository 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 -d

Bearbeiten Sie .env vor dem letzten Befehl. Das Image ordnet Umgebungsvariablen den Konfigurationsschlüsseln zu. Daher wird SEARXNG_SECRET zu server.secret_key und SEARXNG_BASE_URL zu server.base_url. Die skriptgestützte Installation auf dem Host ist ein anderer Weg mit demselben Ergebnis:

git clone https://github.com/searxng/searxng.git searxng
cd searxng
sudo -H ./utils/searxng.sh install all

Dabei werden der Benutzer searxng, die virtuelle Umgebung unter /usr/local/searxng und der uWSGI-Dienst eingerichtet. Dies ist die Referenzkonfiguration in der SearXNG-Dokumentation. Die ausführlichere Anleitung für diesen Weg finden Sie unter SearXNG auf Ihrem 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 einzelne Benutzerinstanz überhaupt keinen Hostnamen und kein TLS-Zertifikat veröffentlichen möchten, hält der Zugriff über einen v3-Onion-Service 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. Auf einer Einzelbenutzerinstanz lässt sich jede Suchanfrage auf Sie zurückführen, statt sich in einer größeren Menge zu vermischen. 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 lesen möchten, geht die Frage, ob SearXNG sicher verwendet werden kann die einzelnen Punkte durch.

Ein praktischer Hinweis zu einem VPS: Adressbereiche von Rechenzentren werden schneller markiert als private Anschlüsse. Daher stößt eine neue Instanz bei einigen Engines bereits innerhalb der ersten Suchanfragen auf CAPTCHAs. Das ist das oben beschriebene Verhalten bei einer Sperre und keine Fehlkonfiguration.

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 klonen. Das Projekt wird jedoch nicht mehr gepflegt. Der letzte Code-Commit wurde im April 2023 erstellt. Die README enthält außerdem den Satz „Searx is no longer maintained.“ Prüfen Sie dies selbst mit curl -s https://api.github.com/repos/searx/searx | jq -r '.pushed_at'. Lesen Sie anschließend die aktuellen Commit-Nachrichten, weil ein Push-Datum allein auch durch eine Änderung an der Dokumentation entstehen kann. 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 weiter verändert.

Kann ich Searx noch mit apt oder pip installieren?

Auf aktuellen Systemen nicht. Auch dort, wo es möglich ist, ist die Installation nicht sinnvoll. Ubuntu hat searx zuletzt in 22.04 in Version 1.0.0 paketiert. Daher gibt sudo apt install searx unter 24.04 E: Unable to locate package searx zurück. Debian lieferte in Debian 12 noch Version 1.1.0 aus und entfernte das Paket im Oktober 2023 aus testing. Debian 13 enthält daher kein Paket. PyPI stellt weiterhin Version 0.17.0 aus Juli 2020 bereit. Diese Version ist ä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 kein limiter, keinen valkey-Block und keine 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, stellt SearXNG für einen festen Zeitraum keine weiteren Anfragen an dieses Modul. Dieser Zeitraum reicht von 180 Sekunden bei einer einfachen Ablehnung bis zu 1,296,000 Sekunden bei einem Cloudflare-CAPTCHA. Die Ergebnisseite zeigt dies unter „Messages from the search engines“ an. /stats/errors listet die Fehler einschließlich ihrer Gründe auf. Rechenzentrumsadressen werden früher markiert als private Anschlüsse. Eine neue VPS-Instanz bemerkt dieses Verhalten daher frühzeitig.

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 wünschen und akzeptieren, dass die externen Suchmaschinen dann eine einzige Adresse für alle Ihre Suchanfragen sehen. Verwenden Sie eine öffentliche Instanz, wenn Ihnen die Vermischung Ihrer Suchanfragen mit denen anderer Benutzer wichtiger ist als die Kenntnis darüber, was protokolliert wird. Bei einer öffentlichen Instanz kann der Betreiber den Suchtext, den Zeitpunkt, Ihre IP-Adresse und Ihren User-Agent sehen. Er kann den Code jederzeit ändern. Eine angegebene Protokollierungsrichtlinie lässt sich von außen nicht überprüfen.