自托管 SearXNG:你自己的私有元搜索引擎(无追踪)

一个你自己运行的私有搜索前端 —— 聚合 200+ 引擎,不记录任何信息,不展示任何广告。

Aquila 团队 更新于 2026年6月19日

SearXNG 是一个免费、可自托管的元搜索引擎:它将你的查询转发到数百个其他搜索引擎,聚合结果,然后返回给你——不会跟踪你、分析你、存储你的查询或展示广告。自托管它为你提供了一个完全由你拥有的私有搜索前端,可以在一个 5 美元的 VPS 或家里的闲置机器上运行。本指南涵盖了你为什么需要它,如何使用 Docker 部署它,真正重要的配置,以及何时值得在上面添加一个由 Ollama 驱动的 LLM 以获得 AI 风格的答案(Vane/Perplexica 技术栈)。

如果你先想了解 AI 答案引擎的更广阔图景,请参阅 开源 Perplexity 替代方案 —— SearXNG 是其中几个引擎所依赖的私有搜索层。

SearXNG 到底是什么

SearXNG 是原始 Searx 项目的一个社区维护分支。它本身并抓取或索引网页。相反,它充当了你已知的搜索引擎(如 Google、Bing、DuckDuckGo、Brave、Wikipedia 等)前面的代理。你输入一个查询,SearXNG 将其分发到你已启用的所有引擎(最多可达数百个服务),对合并后的结果进行去重和重新排序,然后返回一个干净的页面。

一些值得确认的事实(验证于 2026 年 6 月):

SearXNG
本质可自托管的元搜索引擎
许可证AGPL-3.0
GitHub 星标~32.3k(截至 2026 年 6 月)
聚合引擎数200+ 搜索服务
跟踪无 —— 用户不会被跟踪或分析
广告
部署方式Docker(官方镜像)或裸机

最显著的特性是你在任何商业搜索引擎中都得不到的:**它不会记录关于你的任何信息,也不会从你身上获利。**没有用户画像,没有广告竞价,没有“其他人还搜了”的监视循环。结果就是结果。

为什么自托管你的搜索

你可以使用众多公共 SearXNG 实例之一而无需托管任何东西。但运行你自己的实例能获得公共实例无法提供的保障:

  • **没有信任假设。**在公共实例上,你是在信任一个从未见过的运营者不会记录查询。在自己的实例上,你就是运营者。隐私是结构性的,而不是承诺的。
  • **没有速率限制轮盘赌。**公共实例会遭受大量请求,触及上游速率限制,并提供降级的结果。你的实例只为你(或你的团队)服务。
  • **完全配置控制。**你精确选择哪些引擎运行、默认地区与语言、安全搜索级别以及界面。你可以禁用那些泄露最多或在你使用中表现最差的引擎。
  • **AI 搜索的私有基础。**这对开发者来说很重要:自托管的 SearXNG 是 Vane 等 AI 答案引擎所依赖的检索管道。拥有搜索层,整个自托管 AI 搜索技术栈就能留在你的硬件上。

权衡是常见的:你运行它,你修补它,你让它保持运行。对于一个元搜索前端来说,这确实是轻松的工作 —— 但它现在仍然是你的机器。

Docker 设置概述

SearXNG 提供了官方 Docker 镜像,而 Docker 是阻力最小的路径。部署的样例如下——请始终参考项目最新的 README 和 searxng-docker 仓库以获取准确的最新命令,因为 compose 文件和配置键在不同版本之间会有变动。

1. 前提条件

你需要一台安装了 Docker 和 Docker Compose 的主机。一个 1–2 vCPU / 1–2 GB RAM 的 VPS 对于个人实例来说足够——SearXNG 很轻量,因为繁重的工作(实际的抓取和索引)发生在上游引擎上,而不是在你的机器上。一个 Hetzner 或 DigitalOcean 级别的 VPS,或者一个树莓派/家庭服务器,都可以工作。

2. 拉取技术栈

推荐的部署方式是 searxng-docker compose 包,它会启动三个容器:

  • SearXNG 本身(搜索应用)
  • Redis / Valkey(一个内存缓存,SearXNG 用于速率限制和短暂状态)
  • Caddy(一个可选的反向代理,自动处理 TLS/HTTPS)

你克隆 searxng-docker 仓库,设置一些环境变量,然后运行 docker compose up -d。这就是整个“安装”过程。

3. 指向你的域名(或 localhost)

如果你要将其暴露在互联网上,请设置你的主机名,并让 Caddy 获取 Let’s Encrypt 证书,以便实例通过 HTTPS 提供服务。如果它纯粹是内部使用——你的笔记本电脑、你的家庭实验室、VPN 后面——你可以在 localhost 或私有 IP 上运行它,并完全跳过公共 TLS。仅限内部是最私密的姿势: 你的实例的任何部分都无法从网络外部访问。

4. 生成密钥并锁定

首次运行时,你需要设置一个 secret_key(用于签名)。如果你的实例是公开的,你还需要限制 JSON API 格式,除非你特别需要打开它(捆绑的配置默认禁用开放格式是有原因的——开放的实例可能被滥用为爬虫代理)。

这是基本配置。现在你已经在你的地址上拥有了一个可工作的私有元搜索引擎。

配置基础

几乎所有内容都由一个 YAML 文件 settings.yml 驱动。Docker 包允许你挂载你自己的副本并覆盖默认值。对于实际部署最重要的设置:

引擎

每个上游搜索引擎都是一个你可以启用、禁用或加权的块。开箱后,有几十个已启用。在实践中,你会想要:

  • 禁用经常触发速率限制或故障的引擎,以免它们拖累结果延迟。
  • 禁用你不信任的引擎,如果你对隐私要求严格。
  • 为你最信任的引擎加权,使它们的结果在聚合列表中排名更高。

搜索默认值

设置默认的 language/地区、safe_search 级别以及显示哪些类别(通用、图片、新闻、科学等)。对于团队实例,合理的默认值可以避免每个人来回切换。

速率限制与机器人防护

limiter(由 Redis/Valkey 支持)保护公共实例免遭滥用,并防止上游引擎限制你服务器的 IP。对于任何面向互联网的实例,请保持启用。

UI 与结果格式

你可以定制前端主题,设置默认每页结果数,并且——对于 AI 技术栈很重要——启用 JSON 输出格式 当且仅当你打算通过 LLM 管道以编程方式查询 SearXNG。否则请保持禁用。

一个实用的规则:最初尽量少改动。用默认值让它运行起来,使用一周,然后修剪那些让你烦恼的引擎。

具体的隐私优势

有必要具体说明这里的“私有”能为你带来什么,因为这个词被过度使用了:

  • 没有与您关联的查询记录。 一个为你自己运行的托管实例没有动机——并且在正常配置下,也没有机制——去构建搜索历史档案。没有广告商可以出售这些数据。
  • 上游引擎无法对你进行 IP 指纹识别。 SearXNG 代表你查询上游引擎,使用的是它自己的 IP,而不是你的。Google 看到的是你的服务器,而不是你的浏览器。你获得引擎的结果,而无需提供你的身份、cookie 或指纹。
  • 没有广告驱动的排名。 商业引擎的排名部分取决于展示什么内容对你来说有利可图。SearXNG 只是聚合和去重。没有赞助广告位被悄悄地混入。
  • 循环中没有第三方。 在内部实例上,你的查询在应用层永远不会离开你的网络——它们只作为匿名的扇出请求发送给你选择的引擎。

诚实的告诫:上游引擎仍然能看到查询(只是不知道你是谁)。SearXNG 使你匿名化;它不会让搜索本身消失。如果某个引擎能够对查询内容本身进行指纹识别,那么这些内容仍然会离开你的机器。对大多数人来说,匿名化正是他们想要的好处;对于真正的气隙需求,你需要搜索本地索引,而不是实时网络。

何时添加 LLM 层(Vane / Ollama 技术栈)

SearXNG 本身返回一个链接列表——快速、私密、无广告,但它只是一个列表。要获得Perplexity 风格的引用答案(“这是综合答案,附有来源”),你需要在上面添加一个语言模型,它:

  1. 接受你的问题并运行 SearXNG 查询(使用那个 JSON 输出格式)。
  2. 读取最相关的结果。
  3. 编写一个有根据的、带引用的摘要。

你不必自己构建这些东西。Vane(以前称为 Perplexica 的项目,MIT 许可证,截至 2026 年 6 月拥有约 35.4k GitHub 星标)正好捆绑了这些:一个 Next.js 前端、一个 API 后端,以及一个私有的 SearXNG 实例,以 Docker 镜像形式提供。将其指向本地的 Ollama 模型,以实现完全气隙的 AI 答案,或者当你需要更多推理能力时,指向云端 LLM(OpenAI、Claude、Gemini、Groq)。KhojSurfSense 是各有优势的替代方案——所有内容都在开源 Perplexity 替代方案中涵盖。

那么应该在何时添加 LLM 层?

  • 添加它,当你想要答案而不是链接列表时——研究、问答、“总结 X 的当前状态”。这是模型发挥价值的地方。
  • 保持简洁,当你只想自己点击进行私有网络搜索时。一个纯 SearXNG 实例更轻量、更快,并且不需要 GPU。
  • 使用本地 LLM(Ollama),当隐私是核心时——查询、搜索、检索到的页面以及生成的答案都留在你的硬件上。
  • 仅生成使用云端 LLM,当你想要前沿模型质量,并愿意将提示和检索到的上下文发送给提供商,同时保持搜索私密时。请明智地做出权衡。

如果你的真正目标是与你自己的文档对话而不是实时网络,那是检索增强生成,其构建模块是嵌入向量数据库而不是元搜索引擎。SearXNG 搜索网络;RAG 搜索你的资料。许多自托管设置两者都运行。

常见问题

SearXNG 是搜索引擎还是元搜索引擎? 元搜索引擎。它本身不抓取或索引网络——它将你的查询转发给其他引擎(200+),并聚合结果。这就是它自托管起来很轻量的原因:没有需要构建或存储的索引。

我需要一台强大的服务器来自托管 SearXNG 吗? 不需要。一个 1–2 vCPU / 1–2 GB RAM 的 VPS 甚至一个树莓派都能轻松处理个人实例,因为繁重的工作发生在上游引擎上。只有当你添加本地 LLM 以获得 AI 答案时,才需要更高性能,这时 GPU 会有帮助。

自托管的 SearXNG 真的私密吗? 是的,但有一个细微之处。你的查询不会被记录或分析,上游引擎看到的是你服务器的 IP 而不是你的——所以他们无法对你进行指纹识别。查询内容本身仍然会到达上游引擎(只是去标识化)。对大多数人来说,去标识化正是关键所在。

SearXNG 能像 Perplexity 一样给我 AI 答案吗? 不能单独做到——它返回链接。与 LLM 结合,你就能获得带引用的答案。最简单的途径是 Vane(前身为 Perplexica),它捆绑了 SearXNG 和一个模型层;将其指向本地的 Ollama 模型,即可获得完全私密的 AI 搜索。

SearXNG 与 SearX 有何区别? SearXNG 是原始 Searx 的积极维护的社区分支。它是你现在想要的;“Searx” 教程大多已经过时。


私有搜索前端是你可以自托管的最高杠杆的事情之一:占用空间小,隐私回报大。从这里开始,添加一个开源 AI 答案引擎以获得带引用的摘要,学习驱动搜索自己数据的嵌入,或者浏览所有指南。Aquila 是你拥有的 AI 搜索的独立家园。掌控你自己的搜索。

继续学习

更多关于自托管 AI 搜索、RAG 和向量数据库的指南。