Jak korzystać z SearXNG: Od pierwszego wyszukiwania do mistrzostwa w samodzielnym hostingu
Jeśli kiedykolwiek chciałeś uzyskać wyniki jak z Google, ale bez śledzenia, SearXNG jest twoją metawyszukiwarką stawiającą na pierwszym miejscu prywatność. Agreguje ona wyniki z dziesiątek źródeł — bez profilowania ciebie — i daje ci pełną kontrolę nad filtrami, silnikami, a nawet hostingiem. W tym przewodniku przejdziemy przez trzy ścieżki: korzystanie z publicznej instancji, dostosowywanie sposobu wyszukiwania i wdrażanie własnego, prywatnego SearXNG dla maksymalnej kontroli.
Aby zachować praktyczny charakter, zastosujemy podejście zorientowane na działanie i rozwiązania, z praktycznymi krokami, ustawieniami, które możesz skopiować, i typowymi pułapkami, których należy unikać.
Czym jest SearXNG i dlaczego warto go używać?
SearXNG to metawyszukiwarka o otwartym kodzie źródłowym. Zamiast samodzielnie przeszukiwać sieć, wysyła zapytania do innych wyszukiwarek i prezentuje wyniki w ujednoliconym interfejsie. Rzecz w tym, że usuwa śledzenie, reklamy (w większości instancji) i daje ci szczegółową kontrolę nad tym, jakie silniki włączyć, jakie kategorie przeszukiwać (internet, obrazy, wideo, pliki, IT, wiadomości, nauka) i jak prezentowane są wyniki.
- Brak śledzenia lub profilowania domyślnie
- Konfigurowalne silniki i kategorie
- Możliwość samodzielnego hostingu dla pełnej kontroli
- Przyjazny dla API dla programistów i automatyzacji.
Szybki start: korzystanie z publicznej instancji SearXNG
Możesz zacząć od publicznej instancji (serwera SearXNG prowadzonego przez wolontariuszy). Typowy przepływ:
- Otwórz niezawodną publiczną instancję (wyszukaj „lista instancji SearXNG” lub wątki społecznościowe, aby znaleźć aktywne, renomowane serwery). Oceń czas działania, limity szybkości i oświadczenia o prywatności.
- Wpisz zapytanie i wybierz kategorie (np. Web, Obrazy, Wiadomości) za pomocą górnych zakładek.
- Użyj Preferencji (ikona koła zębatego), aby ustawić:
- Motyw UI i nieskończone przewijanie
- Użyj „bangów” i operatorów:
!g twoje zapytanie wymusza silnik Google (jeśli jest włączony w danej instancji)
!ddg, !bing, !yt, !wp itp., w zależności od konfiguracji instancji
- Standardowe operatory, takie jak cudzysłowy,
site:, filetype:pdf, inurl:, intitle: działają na wielu silnikach
- Dodaj do zakładek swoją ulubioną instancję i eksportuj/importuj Preferencje jako blob JSON, jeśli jest to obsługiwane przez UI.
Porada: Publiczne instancje mogą ograniczać szybkość anonimowym użytkownikom, aby chronić się przed nadużyciami. Jeśli widzisz captchas lub spowolnienia, wypróbuj inną instancję lub samodzielnie hostuj.
Ruchy dla zaawansowanych użytkowników w interfejsie
- Przełączaj silniki na bieżąco: W Preferencjach → Silniki włączaj/wyłączaj określone źródła dla każdej kategorii.
- Dostosuj wyniki: Ukryj duplikaty, zmień zakres czasu (np. ostatni rok), sortuj według trafności lub daty.
- Przełączniki prywatności: Wyłącz dowolny silnik, którego nie chcesz używać. Niektóre silniki wymagają kluczy API; jeśli ich nie ma, po prostu nie będą używane.
- Skróty klawiaturowe: Wiele motywów SearXNG obsługuje
/, aby skupić się na polu wyszukiwania i klawisze strzałek do nawigacji po wynikach.
Jak samodzielnie hostować SearXNG (metoda Docker)
Samodzielny hosting zapewnia niezawodność, szybkość i kontrolę nad tym, które silniki mają być używane. Ścieżka Dockera jest najprostsza.
Wymagania
- Linux VPS lub serwer domowy (2 vCPU/2 GB RAM to komfort dla lekkiego użytkowania)
- Zainstalowany Docker i Docker Compose
- Domena/subdomena i opcjonalny reverse proxy (Caddy/Traefik/Nginx) dla HTTPS
Kroki
- Sklonuj repozytorium wdrożeniowe SearXNG (lub użyj minimalnego pliku Compose):
version: "3.8"
services:
searxng:
image: searxng/searxng:latest
container_name: searxng
environment:
- BASE_URL=
- SEARXNG_SECRET_KEY=change_me_to_a_long_random_value
volumes:
- ./searxng:/etc/searxng
ports:
- "8080:8080"
restart: unless-stopped
- Wygeneruj silny
SEARXNG_SECRET_KEY (np. openssl rand -hex 32).
- Skonfiguruj reverse proxy z HTTPS (przykład Caddy):
search.example.com {
reverse_proxy 127.0.0.1:8080
}
Caddy automatycznie udostępni TLS przez Let’s Encrypt.
- Odwiedź ` i potwierdź, że się ładuje.
Konfiguracja podstawowa: settings.yml
Po pierwszym uruchomieniu będziesz mieć konfigurację w zamontowanym woluminie (np. ./searxng/settings.yml). Kluczowe sekcje:
general: nazwa, tryb debugowania, liczba wyników
server: klucz tajny, adres powiązania, limity szybkości
engines: włączanie/wyłączanie silników, kategorie, limity czasu
ui: motyw, nieskończone przewijanie, autouzupełnianie
search: domyślne ustawienia bezpiecznego wyszukiwania, język, ustawienia regionalne
Przykładowy fragment:
general:
instance_name: "My Private SearXNG"
server:
secret_key: "<same as env or longer>"
image_proxy: true
rate_limit: "60/minute"
search:
safe_search: 1 # 0 off, 1 moderate, 2 strict
autocomplete: "duckduckgo"
ui:
default_theme: "simple"
infinite_scroll: true
engines:
- name: duckduckgo
engine: duckduckgo
categories: .
### Quick Example
- Endpoint: `/search`
- Methods: GET or POST
- Parameters: `q` (query), `categories`, `language`, `format=json`, `time_range`, `safesearch`
```bash
curl "
Odpowiedź zawiera wyniki organiczne, użyte silniki i czasy. Świetne do budowania automatyzacji badań, lokalnych paneli i niestandardowych UI.
Strojenie silników i kategorii
- Preferuj szybkie, przyjazne dla prywatności źródła (np. Wikipedia, Stack Exchange, MDN, DuckDuckGo, Brave, jeśli jest dozwolone, oficjalne API dla YouTube/Reddit/Mastodon).
- Wyłącz silniki z częstymi captchas lub wysokim opóźnieniem w twojej sieci.
- Używaj domyślnych ustawień dla każdej kategorii; na przykład włącz GitHub, Stack Overflow i PyPI w kategorii „IT”, włącz arXiv/Crossref w kategorii „Nauka” i ustaw
time_range na „ostatnie” dla „Wiadomości”.
Lista kontrolna rozwiązywania problemów
- Widzisz captchas lub puste wyniki? Zmniejsz lub obróć silniki powodujące blokady; nieznacznie zwiększ limity czasu; włącz buforowanie.
- Żądania API nie powiodły się? Sprawdź nagłówki reverse proxy i CORS; potwierdź
format=json.
- UI powolny? Zmniejsz liczbę wyników na stronę; wyłącz ciężkie silniki; włącz pamięć podręczną Redis.
- Pętla restartu Dockera? Sprawdź składnię
settings.yml i zmienne środowiskowe.
Najlepsze praktyki dla zespołów i zaawansowanych użytkowników
- Eksportuj i kontroluj wersje
settings.yml (bez sekretów), aby śledzić zmiany.
- Używaj menedżerów sekretów lub plików
.env dla kluczy API.
- Zaplanuj cotygodniowe odświeżanie kontenerów, aby być na bieżąco ze zmianami silników.
- Monitoruj dzienniki pod kątem błędów silników lub przekroczeń limitów.
- Jeśli osadzasz SearXNG w aplikacjach, wycofaj się z ponownych prób i randomizuj opóźnienia, aby uniknąć banów.
Opcjonalnie: Połącz SearXNG z innymi narzędziami
- Użyj JSON API w swoich notesach badawczych lub przepływach pracy czatu.
- Kieruj wyszukiwanie w sieci oparte na aplikacjach przez swoją prywatną instancję, aby zachować prywatność.
- Niektóre UI AI/web mogą podłączyć się do SearXNG w celu przeglądania przez własny endpoint (odpowiednio skonfiguruj adres bazowy i parametry API).
Warto zauważyć: Jeśli tworzysz przepływy pracy badawcze lub podsumowujesz wyniki na dużą skalę, narzędzie takie jak Sider.AI może usprawnić krok czytania i podsumowywania na wielu kartach lub zapytaniach. Możesz skierować przeglądanie do prywatnego endpointu SearXNG, a następnie użyć Sider.AI do automatycznego rejestrowania spostrzeżeń, tworzenia szkiców lub kompilowania cytatów, co oszczędza czas podczas wykonywania wielu wyszukiwań z rzędu. Bezpieczeństwo i etyka
- Szanuj warunki silników, które włączasz.
- Nie narażaj swojej instancji na publiczne nadużycia; ograniczaj szybkość i, w razie potrzeby, ogranicz dostęp.
- Informuj członków zespołu o oczekiwaniach dotyczących prywatności; dzienniki można skonfigurować tak, aby unikać przechowywania adresów IP lub zapytań.
Twoja pierwsza 15-minutowa konfiguracja: Mini lista kontrolna
- Uruchom Docker i utwórz plik Compose
- Uruchom kontener i potwierdź, że
:8080 działa
- Umieść go za HTTPS z proxy
- Edytuj
settings.yml, aby włączyć silniki, którym ufasz
- Ustaw domyślne kategorie i SafeSearch
- Przetestuj API za pomocą żądania
curl
- Dodaj do zakładek swoją instancję i udostępnij ją swojemu zespołowi
Kluczowe wnioski
- SearXNG zapewnia prywatność, kontrolę i elastyczność bez pisania crawlera.
- Zacznij od publicznej instancji, a następnie samodzielnie hostuj, aby uzyskać niezawodność i możliwość dostosowania.
- Strojenie silników i kategorii dla szybkości i trafności.
- JSON API sprawia, że SearXNG jest idealny do badań i automatyzacji.
- Zabezpiecz swoje wdrożenie za pomocą HTTPS, limitów szybkości i minimalnego logowania.
Referencje i dalsza lektura
- Oficjalny przegląd Search API dla parametrów i formatów.
- Szczegółowe instrukcje samodzielnego hostingu i samouczki społecznościowe mogą być pomocne w przypadku konfiguracji Dockera i Windows.
- Integracja SearXNG z przepływami pracy i narzędziami aplikacji często przebiega zgodnie z tym samym wzorcem API, który został użyty powyżej.
FAQ
P1: Co to jest SearXNG i jak to działa?
SearXNG to metawyszukiwarka zorientowana na prywatność, która wysyła zapytania do wielu źródeł i agreguje wyniki, bez śledzenia użytkowników. Możesz użyć publicznej instancji lub samodzielnie hostować, aby mieć pełną kontrolę nad silnikami, filtrami i ustawieniami prywatności.
P2: Jak samodzielnie hostować SearXNG za pomocą Dockera?
Utwórz usługę Docker Compose, używając oficjalnego obrazu, ustaw silny klucz tajny i udostępnij go za reverse proxy z HTTPS. Edytuj settings.yml, aby włączyć silniki, skonfigurować kategorie i dostosować opcje prywatności.
P3: Czy mogę używać SearXNG do programowego wyszukiwania za pośrednictwem API?
Tak. Wywołaj /search z parametrami takimi jak q, categories i format=json, aby otrzymywać wyniki JSON dla automatyzacji i aplikacji. Jest to idealne rozwiązanie dla potoków badawczych i narzędzi wewnętrznych.
P4: Jak wybrać bezpieczną publiczną instancję SearXNG?
Szukaj aktywnych, renomowanych instancji z jasnymi oświadczeniami o prywatności, dobrym czasem działania i minimalną liczbą captchas. Możesz także przełączać instancje lub samodzielnie hostować, jeśli napotkasz ograniczenia szybkości lub problemy z niezawodnością.
P5: Jakie operatory wyszukiwania działają w SearXNG?
Typowe operatory, takie jak cudzysłowy, site:, filetype:, inurl: i intitle: generalnie działają i są przekazywane do podstawowych silników. Możesz także użyć skrótów bang (np. !g, !ddg, !yt), jeśli instancja je obsługuje.