介绍
信安搜索一个开源,高隐私,自架自用的聚合搜索引擎。前后端皆由Javascript编写,分别是xinahn-socket服务端和xinahn-client客户端,因此非常的容易上手!
开源仓库
https://github.com/xinahn
服务端(xinahn-socket)
这是服务端,需要在运行前端之前将后端跑完:
- 事前准备
- 确认已安装Nginx以及Node.js
- apt install default-jre
- apt install chromium-driver
$ git clone https://github.com/xinahn/xinahn-socket
$ cd xinahn-socket && npm install
- 执行API
- Antenna.js -> 只需跑一个,接口会跑在 port 4100 antenna.js 为一个整合所有并发的请求并且与前端沟通的脚本。
$ node antenna.js
- Minion.js -> 依照需求开启多个,与 Antenna.js 进行 socket 沟通。
$ node minion.js
注意:minion.js 不能跑在root。
- Nginx 设置
将以下代码黏贴于 /etc/nginx/sites-available/default.conf 之中。
server {
\t...
\tlocation ^~ /api/ {
\t\tproxy_pass http://localhost:4100;
\t}
\t...
}
重新载入 Nginx 设定即可
$ service nginx reload
客户端(xinahn-client)
- 事前准备
- 确认已安装Nginx以及Node.js
- 确认已跑完后端设置
- 安装
$ git clone https://github.com/xinahn/xinahn-client
$ cd xinahn-client && npm install
$ npm run build
构建好的文件在build文件夹下
- Nginx 设置
将以下代码黏贴于 /etc/nginx/sites-available/default.conf 之中,并且记得置换YOUR_CLIENT_DIRECTORY为你的xinahn-client位置
server {
\t...
\troot YOUR_CLIENT_DIRECTORY/xinahn-client/build;
\tlocation / {
\t\ttry_files $uri $uri /index.html;
\t}
\t...
}
- 重新载入 Nginx 设定即可
$ service nginx reload
打开 http://YOUR_SERVER_IP,以下是demo截图
总结
xinahn是一个聚合搜索引擎,相比原生的多数搜索引擎,特别是国内的大多数搜索引擎充斥各种广告,它则要显得清爽了很多,没有多余的功能,没有那么多广告,聚合多个搜索引擎,代码开源,可以说非常的良心!
文章来源: https://twgreatdaily.com/zh-hans/-6CiEG8BMH2_cNUgstQZ.html