Files
kochwas/searxng/settings.yml
hsiegeln 1b31a8ff1e
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m19s
feat(searxng): Brave via API-Key, robustere Timeouts + Engine-Mix
Nach den 403/Too-Many-Requests-Logs des Pi jetzt SearXNG-Setup auf
API-first + höhere Timeouts umgestellt:

- Brave läuft über den API-Key aus BRAVE_API_KEY (via !env in settings.yml
  gelesen). Kein Scraping-Ban-Spam mehr. Key wird im .env auf dem Pi
  gepflegt (nicht im Repo) und ans searxng-Container durchgereicht.
- outgoing.request_timeout 3s → 8s, max_request_timeout → 12s. Pi
  hängt gelegentlich knapp am Default-Limit, lieber warten als 0
  Treffer.
- DuckDuckGo-Timeout einzeln auf 8s, Mojeek als zusätzliche Quelle
  (eigener Index, selten Rate-Limits).
- Video-/News-/Image-Engines explizit disabled (Google/Bing/karmasearch
  videos etc.) — produzieren für Rezeptseiten nur 403-Noise.

docker-compose.prod.yml reicht BRAVE_API_KEY=${BRAVE_API_KEY:-} an den
searxng-Container weiter. Leerer Key ist ok — Brave meldet 401 bei der
ersten Query, andere Engines laufen unbeeindruckt weiter.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-18 13:03:17 +02:00

81 lines
2.2 KiB
YAML

use_default_settings: true
server:
# In production override via env (see docker-compose.prod.yml).
secret_key: ${SEARXNG_SECRET:-dev-secret-change-in-prod}
# Disables rate limiter + bot detection. This is a private internal service
# called only by kochwas — no public exposure, no abuse risk.
limiter: false
public_instance: false
image_proxy: false
default_http_headers:
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Robots-Tag: noindex, nofollow
search:
formats:
- html
- json
safe_search: 0
autocomplete: ''
default_lang: 'de'
# Höhere Timeouts als Default (3s), weil der Pi und einige Upstream-Engines
# öfter knapp drüber liegen — lieber 8s warten als gar kein Ergebnis.
outgoing:
request_timeout: 8.0
max_request_timeout: 12.0
ui:
default_locale: de
# Quieten engines that fail on cold start and aren't useful here
enabled_plugins:
- 'Hash plugin'
- 'Tracker URL remover'
- 'Open Access DOI rewrite'
engines:
# Brave mit API-Key: stabiler als der HTML-Scraper, kein Rate-Limit-Spam
# mehr. Key kommt aus dem BRAVE_API_KEY-Env (.env auf dem Pi, nicht im Repo).
# Fehlt der Key oder ist er leer, fällt Brave bei der ersten Anfrage zurück
# auf einen 401 — andere Engines laufen normal weiter.
- name: brave
engine: brave
shortcut: br
categories: [general, web]
timeout: 6.0
api_key: !env BRAVE_API_KEY
disabled: false
# DuckDuckGo: Standard-Scraper, 3s-Default war zu knapp. Bleibt als Fallback,
# falls Brave mal ausfällt oder nicht liefert.
- name: duckduckgo
engine: duckduckgo
shortcut: ddg
timeout: 8.0
# Mojeek: eigener Index, seltener Rate-Limits, ergänzt die großen zwei.
- name: mojeek
engine: mojeek
shortcut: mjk
timeout: 6.0
disabled: false
# Video-/News-Engines abdrehen — wir wollen nur Text-Treffer für Rezeptseiten.
- name: google videos
disabled: true
- name: google news
disabled: true
- name: google images
disabled: true
- name: bing videos
disabled: true
- name: bing news
disabled: true
- name: bing images
disabled: true
- name: karmasearch videos
disabled: true