在看阮一峰的博客http://www.ruanyifeng.com/blog/2019/11/weekly-issue-84.html的时候,看到他提到了一个开源搜索代理SearX,秉承着玩一玩又不会少块肉的心态,就按着教程在自己阿里云上也搭了一个SearX服务。
github地址:https://github.com/asciimoo/searx
教程是基于ubuntu系统的,搭建过程如下:
一,安装
sudo apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-babel zlib1g-dev libffi-dev libssl-devcd /usr/local sudo git clone https://github.com/asciimoo/searx.git sudo useradd searx -d /usr/local/searx sudo chown searx:searx -R /usr/local/searxsudo -u searx -i cd /usr/local/searx virtualenv searx-ve . ./searx-ve/bin/activate ./manage.sh update_packages
二, 配置
sed -i -e "s/ultrasecretkey/`openssl rand -hex 16`/g" searx/settings.yml
三,启动
python searx/webapp.py
如果上面都没有出问题,取消配置文件中的debug选项
sed -i -e "s/debug : True/debug : False/g" searx/settings.yml
四,安装uwsgi
sudo apt-get install uwsgi uwsgi-plugin-python
创建/etc/uwsgi/apps-available/searx.ini 文件,里面内容如下:
[uwsgi] # Who will run the code uid = searx gid = searx # disable logging for privacy disable-logging = true # Number of workers (usually CPU count) workers = 4 # The right granted on the created socket chmod-socket = 666 # Plugin to use and interpretor config single-interpreter = true master = true plugin = python lazy-apps = true enable-threads = true # Module to import module = searx.webapp # Virtualenv and python path virtualenv = /usr/local/searx/searx-ve/ pythonpath = /usr/local/searx/ chdir = /usr/local/searx/searx/
激活uwsgi应用并重启
cd /etc/uwsgi/apps-enabled ln -s ../apps-available/searx.ini /etc/init.d/uwsgi restart
默认情况下端口是8888,并且监听地址是127.0.0.1,如果要通过外网访问,需要配置用apache或者nginx配置反向代理。我这里为了方便,监听地址改成了0.0.0.0,端口因为跟其他应用冲突,改成8889了。最终的地址如下:
界面:
我输入杭州,搜索
很可惜,因为墙的原因,得不到想要的结果,关于这个我还不知道该怎么弄。但是图片可以搜索出来:
好吧,又搭了一个没什么用处的应用~