开源元搜索引擎 SearXNG:保护隐私的新选择
在数字信息爆炸的时代,搜索引擎已成为我们获取知识、探索世界不可或缺的工具。然而,传统的中心化搜索引擎,例如Google,百度等,在给我们带来便利的同时,用户的搜索习惯也在无时无刻不在被这些大公司收集和利用,从而针对性地给你推送内容和广告。有一部纪录片叫做《监视资本主义:智能陷阱》,讲述了这些大公司如何利用你的数据潜移默化地影响你的行为,从而不断获取你的注意力。在这个“注意力即金钱”的互联网时代,你无时无刻刷视频、刷购物网站的行为就好像情不自禁地在给这些大公司洒钱,毕竟,那些推荐算法,美观漂亮的UI设计,消息的小红点,就是针对人性地弱点来设计的,让你陷入其中无法自拔。
那么,有没有什么办法阻止这些大公司收集你的数据呢?SearxNG作为一个开源的、去中心化的元搜索方式,为我们提供了一个有力的替代方案。如果你想要拥有一个个人专属的搜索引擎,保护你的搜索记录、Cookie、浏览痕迹,同时还可以按照自己的需求进行搜索,杜绝这些大公司的广告和推荐算法,直达结果,那么就快来试试吧!
本人搭建的SearxNG搜索网页:https://search.frankguo.life
Github地址:https://github.com/searxng/searxng
效果展示
SearxNG可以按照你的需求自定义搜索引擎,总共有246种搜索引擎可以选择,如果你想要从特定地网站搜索,也可以自由地设置搜索方式。
例如,如果我想从百度和Google上搜索我国国产第五代战斗机歼35的相关内容,只需要勾选Google和Baidu,搜索结果返回如下:

再比如,我想要搜索J35在Bilibili和YouTube上的相关视频,只需要在视频搜索中勾选Bilibili和YouTube,搜索结果返回如下:

可以看到,搜索结果很直观,直接给出了内容的出处,而且没有广告。各位看官可以从我搭建的SearxNG实例上先试试看。网址在这里:
为什么选择SeraxNG?
SearxNG核心理念:隐私与开放
SearxNG是一个Github上的开源项目,旨在提供完全开源和隐私保护的元搜索服务。与传统搜索引擎直接接收并记录用户搜索记录不同,SearxNG扮演着一个中介角色。当您通过SearxNG进行搜索时,查询请求会首先发送到SearxNG实例,然后由该实例匿名地将查询请求分发到多个主流搜索引擎(如Google, 百度,Bing, DuckDuckGo, Wikipedia等)以及其他特定来源。这种匿名化代理机制确保了IP地址和其他个人识别信息不会直接暴露给上游搜索引擎,从而有效保护了您的数字足迹。
其次,SearxNG秉持开放性原则。作为一个开源项目,其全部源代码均可公开审查、修改和分发。这意味着任何人都可以验证其隐私保护机制的有效性,并为项目的发展贡献力量。这种透明度不仅增强了用户对项目的信任,也促进了全球开发者社区的协作与创新。
SearxNG的工作原理:聚合与去重
SearxNG的独特之处在于其元搜索功能。它并非一个独立的搜索引擎,而是一个结果聚合器。当您提交一个查询时,SearxNG会并行地向其配置的数十甚至上百个搜索引擎发送请求。随后,它会收集这些来源返回的结果,进行智能的去重、排序和格式化处理,最终以统一且清晰的界面呈现给用户。
这种聚合模式带来的优势显而易见:
可以从多个角度、多个来源获取信息,避免了单一搜索引擎可能存在的“信息茧房”效应或偏见。
即使某个特定搜索引擎限制了某些结果,SearxNG也能通过其他来源提供信息,从而增强了信息获取的自由度。
用户可以根据自身需求,自由选择启用或禁用特定的搜索源,甚至可以部署自己的SearxNG实例,实现高度个性化的搜索体验。
SearxNG的价值:开源、隐私保护、高度自定义
SearxNG它不仅仅是一个搜索工具,更是一种赋能用户数据主权的实践。你的数据不再被大公司收集和利用,可以完全掌握自己的数字主权。通过SearxNG,用户能够:
完全掌控个人数据:你是否有被精确推送过各种广告,例如当你百度一个什么东西时,过不了多久你的购物软件就会收到类似的推送,然后让你剁手下单?这就是因为大公司完全知道你的数据,因此可以给你精确推送广告和个性化搜索结果,也就是说,你的数据隐私在别人手里!使用SearxNG自己搭建元搜索引擎,就可以摆脱推送的困扰,让你的数据你做主。SearxNG可以自己部署,所有的后台数据都存储在你的服务器上,并且搜索请求是以第三方的方式发送给各大搜索引擎,这样就避免了你的搜索记录被利用。
自定义搜索方式: 获取更个性、更多元化的搜索结果。你可以调用不同的搜索引擎进行搜索,最终后聚合后返回搜索结果。我喜欢同时从B站和YouTube上搜索某一教程视频,如果你使用Google或者百度,大概率搜出来的是不会同时出现B站和YouTube视频的(用Google搜出来YouTube视频,用百度搜出来是B站视频)。但是,使用SearxNG你只需要在视频搜索栏里勾选B站和Youtube,即可聚合搜索。
参与开源社区: 贡献智慧,共同构建一个更开放、更透明的互联网生态。
如何搭建SearxNG?
准备工作
首先,你需要一台购买云服务器和域名,我在如何使用Halo搭建自己的个人博客(小白详细版)这篇文章已经详细介绍过了,这里就不再重复。如果你想要使用Google,YouTube等海外平台的搜索引擎,这里推荐大家使用位于海外的云服务器。直接给出相关链接:
NameSilo:https://www.namesilo.com
CloudFlare:https://dash.cloudflare.com
使用Nginx proxy manager进行反向代理
我在如何使用Halo搭建自己的个人博客(小白详细版)这篇文章已经详细介绍过Nginx proxy manager,这里直接给出配置信息,在CloudFlare添加一条DNS解析记录,然后在proxy manager里面进行反向代理,并配置SSL证书:




完成之后,就可以正式开始部署了。
使用Docker compose进行部署
使用docker compose部署很简单,首先在docker文件夹下创建一个叫做searxng的文件夹,然后复制粘贴这段docker-compose.yml代码,请按照我给的说明进行相关的修改(我对于官方的代码进行了一定改动):
version: '3.7'
services:
# 注释掉caddy的内容
# caddy:
# container_name: caddy
# image: caddy:2-alpine
# network_mode: host
# volumes:
# - ./Caddyfile:/etc/caddy/Caddyfile:ro
# - caddy-data:/data:rw
# - caddy-config:/config:rw
# environment:
# - SEARXNG_HOSTNAME=${SEARXNG_HOSTNAME:-http://localhost:80}
# - SEARXNG_TLS=${LETSENCRYPT_EMAIL:-internal}
# cap_drop:
# - ALL
# cap_add:
# - NET_BIND_SERVICE
# - DAC_OVERRIDE
redis:
container_name: redis
image: "redis:alpine"
command: redis-server --save "" --appendonly "no"
networks:
- searxng
tmpfs:
- /var/lib/redis
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
- DAC_OVERRIDE
searxng:
container_name: searxng
image: searxng/searxng:latest
networks:
- searxng
ports:
- "8180:8080" # 这个冒号左边的端口可以更改,右边的不要改
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-<your_website_url>}/ # 这里的<your_website_url>修改为你的域名,比如本站是search.frankguo.life
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- DAC_OVERRIDE
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"
networks:
searxng:
ipam:
driver: default
#volumes:
#caddy-data:
#caddy-config:然后,启动docker容器:
docker-compose up -d部署完成之后,如果你使用的是阿里云或者腾讯云,你需要在防火墙安全组里放行8180端口,才可以正常使用。具体操作参考如何使用Halo搭建自己的个人博客(小白详细版)。
然后,你就可以愉快地使用你的专属搜索引擎了。在任意浏览器输入:
https://search.<your website url>.xxx开始使用。
使用自己的搜索引擎搜索,再也没有广告推送和数据收集,最大程度保护你的上网痕迹。
完结,撒花!
不断
- 感谢你赐予我前进的力量

