fix(searxng): Mojeek entfernt — blockt die Pi-IP mit 403
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m20s

Nach dem DDG-Rauswurf war Mojeek die verbleibende Lärm-Quelle im Log:
HTTP 403 pro Suche, suspended_time=180. Mojeek hat nach eigenem Muster
Pi-IPs als automatisierten Traffic klassifiziert. Brave (API) deckt die
Websuche zuverlässig ab — Mojeek ist draußen, sowohl im searxng.ts-
Query (engines=brave) als auch in der SearXNG-keep_only-Liste.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-18 21:15:54 +02:00
parent 76ea5bed8d
commit 2f2f7dc7e7
2 changed files with 6 additions and 13 deletions

View File

@@ -1,13 +1,13 @@
# Defaults laden, aber Engine-Liste rigoros auf brave + mojeek eindampfen. # Defaults laden, aber Engine-Liste rigoros auf brave eindampfen.
# keep_only ist robuster als einzelne `disabled: true`-Overrides: SearXNGs # keep_only ist robuster als einzelne `disabled: true`-Overrides: SearXNGs
# Merge-Semantik für partial overrides (nur name + disabled ohne engine:) # Merge-Semantik für partial overrides (nur name + disabled ohne engine:)
# greift nicht zuverlässig — DDG & Co. wurden trotzdem abgefragt. keep_only # greift nicht zuverlässig — DDG & Co. wurden trotzdem abgefragt. keep_only
# wirft alles andere vor dem Laden raus, kein Captcha-/403-Log-Lärm mehr. # wirft alles andere vor dem Laden raus, kein Captcha-/403-Log-Lärm mehr.
# Mojeek blockt die Pi-IP mit 403 und ist deshalb draußen.
use_default_settings: use_default_settings:
engines: engines:
keep_only: keep_only:
- brave - brave
- mojeek
server: server:
# Platzhalter wird beim Container-Start per os.path.expandvars aus der # Platzhalter wird beim Container-Start per os.path.expandvars aus der
@@ -58,10 +58,3 @@ engines:
timeout: 6.0 timeout: 6.0
api_key: "${BRAVE_API_KEY}" api_key: "${BRAVE_API_KEY}"
disabled: false disabled: false
# Mojeek: eigener Index, seltener Rate-Limits, ergänzt Brave.
- name: mojeek
engine: mojeek
shortcut: mjk
timeout: 6.0
disabled: false

View File

@@ -312,10 +312,10 @@ export async function searchWeb(
// Nur Text-Engines abfragen — SearXNG-Video/Image-Engines (karmasearch etc.) // Nur Text-Engines abfragen — SearXNG-Video/Image-Engines (karmasearch etc.)
// bringen uns für Rezeptseiten nichts und produzieren nur 403-Log-Noise. // bringen uns für Rezeptseiten nichts und produzieren nur 403-Log-Noise.
endpoint.searchParams.set('categories', 'general'); endpoint.searchParams.set('categories', 'general');
// Explizit nur Brave (API) + Mojeek — defensiv gegen SearXNG-Merge-Quirks, // Nur Brave (via API) Mojeek blockt die Pi-IP mit 403, andere Engines
// bei denen disabled:true in partial overrides nicht greift und DDG o.ä. // sind von SearXNG-Seite durch keep_only ohnehin ausgeknipst. So bleibt
// trotzdem angefragt wird. So ist uns die globale Engine-Liste egal. // das Log sauber und kochwas ist unabhängig von der globalen Engine-Liste.
endpoint.searchParams.set('engines', 'brave,mojeek'); endpoint.searchParams.set('engines', 'brave');
if (pageno > 1) endpoint.searchParams.set('pageno', String(pageno)); if (pageno > 1) endpoint.searchParams.set('pageno', String(pageno));
const body = await fetchText(endpoint.toString(), { const body = await fetchText(endpoint.toString(), {