偶遇一個開源,高隱私,自架自用的聚合搜索引擎——xinahn

介紹

信安搜索一個開源,高隱私,自架自用的聚合搜索引擎。前後端皆由Javascript編寫,分別是xinahn-socket服務端和xinahn-client客戶端,因此非常的容易上手!




偶遇一個開源,高隱私,自架自用的聚合搜索引擎——xinahn



開源倉庫

https://github.com/xinahn

服務端(xinahn-socket)

這是服務端,需要在運行前端之前將後端跑完:

  • 事前準備
  1. 確認已安裝Nginx以及Node.js
  2. apt install default-jre
  3. apt install chromium-driver
$ git clone https://github.com/xinahn/xinahn-socket
$ cd xinahn-socket && npm install
  • 執行API
  1. Antenna.js -> 只需跑一個,接口會跑在 port 4100 antenna.js 為一個整合所有併發的請求並且與前端溝通的腳本。
$ node antenna.js
  1. 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)

  • 事前準備
  1. 確認已安裝Nginx以及Node.js
  2. 確認已跑完後端設置
  • 安裝
$ 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


偶遇一個開源,高隱私,自架自用的聚合搜索引擎——xinahn

總結

xinahn是一個聚合搜索引擎,相比原生的多數搜索引擎,特別是國內的大多數搜索引擎充斥各種廣告,它則要顯得清爽了很多,沒有多餘的功能,沒有那麼多廣告,聚合多個搜索引擎,代碼開源,可以說非常的良心!


分享到:


相關文章: