一款开源的聚合搜索引擎——信安搜索
前言
网上冲浪确实快乐。
最近冲着冲着就碰到一个好东西,一个开源的搜索引擎。
摸摸手上的键盘,手不自觉动了起来,花了些时间在自己的服务器上装了一个。
于是有了这篇文章,旨在记录下安装过程。
本文部署过程基于Ubuntu18.04和宝塔面板
介绍
优点:开源,聚合,高隐私,简洁
项目地址
Demo
官方:DEMO (已挂)
我的:咕咕咕
部署过程
准备工作
Linux VPS一个
后端部署
准备
- 安装
Nginx
和Nodejs
宝塔面板自带Nginx
安装功能不再赘述,Nodejs
在Ubuntu18.04默认仓库里版本只有老版本8.10.0
,而且不带npm
,因而需要nodesource
来安装指定版本的Nodejs
。这里选用12.x版本。
1 | cd ~ |
- 另外两个包
1 | apt install default-jre |
注意,这里要记下安装的版本号,我的版本是85.0.4183.83
,后面要用。
安装
1 | git clone https://github.com/xinahn/xinahn-socket |
装完之后,需要替换成对应版本的chromedriver。
首先到谷歌官方下载之前记下来的版本号的chromedriver,选择对应平台的版本,我这里下载的是linux版本chromedriver_linux64.zip
,解压出一个chromedriver
文件。
然后到xinahn-socket
根目录下替换原来的chromedriver
文件。
执行API
Antenna.js:只需跑一个
1 | node antenna.js |
Minion.js:依照需求开启多个,且一定要在非root用户下运行。
1 | su - username -c node minion.js ##指定某某用户运行minion.js |
Username
替换成你的非root用户名。
如果前面替换了正确的chromedriver,这里就不会报错。
Nginx 设置
将以下代码黏贴于/etc/nginx/sites-available/default.conf
之中
1 | server { |
宝塔面板安装的Nginx没有对应路径,这里我把代码插在站点的配置文件里。
然后重启Nginx:
1 | service nginx reload |
前端
安装
1 | git clone https://github.com/xinahn/xinahn-client |
这时前端文件生成build
目录下。
Nginx 设置
将以下代码粘贴于/etc/nginx/sites-available/default.conf
之中,并且记得置换YOUR_CLIENT_DIRECTORY
为你的xinahn-client
位置
1 | server { |
这里我粘贴在同个站点的配置文件里,需要注意的是,这里定义了root和配置文件前面的root一行会有冲突,记得注释前面root那一行。
重启Nginx
1 | service nginx reload |
运行
后端执行两个api,需要用到进程守护。我这里直接用shell脚本定时运行。