软件简介

Searx是一个免费的互联网元搜索引擎,汇集了70多种搜索服务的结果。 用户既不被跟踪也不被分析。 此外,searx可以在Tor上实现在线匿名搜索。

基本安装

下面是基于 Debian/Ubuntu 和 virtualenv 的安装指南,如果是 Ubuntu 请确认使用的是 universe 仓库。

安装依赖包:

sudo apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-babel zlib1g-dev libffi-dev libssl-dev

安装 searx:

cd /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/searx

在 virtualenv 中安装依赖:

sudo -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

根据需要修改 searx/settings.yml

检查

启动 searx:

python searx/webapp.py

如果一切工作正常,可以在 settings.yml 中禁用调试选项:

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

Web 服务器

nginx

使用如下命令安装 Nginx

sudo apt-get install nginx

配置到 / 根路径

创建配置文件 /etc/nginx/sites-available/searx 内容如下:

server {

listen 80;

server_name searx.example.com;

root /usr/local/searx;

location / {

include uwsgi_params;

uwsgi_pass unix:/run/uwsgi/app/searx/socket;

}

}

重启服务:

sudo service nginx restart

sudo service uwsgi restart

配置到指定路径 (/searx)

添加配置文件 /etc/nginx/sites-enabled/default 内容如下:

location = /searx { rewrite ^ /searx/; }

location /searx {

try_files $uri @searx;

}

location @searx {

uwsgi_param SCRIPT_NAME /searx;

include uwsgi_params;

uwsgi_modifier1 30;

uwsgi_pass unix:/run/uwsgi/app/searx/socket;

}

或者使用反向代理(适合单用户使用或者低访问量的实例)

location /searx {

proxy_pass http://127.0.0.1:8888;

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header X-Scheme $scheme;

proxy_set_header X-Script-Name /searx;

proxy_buffering off;

}

编辑 searx/settings.xml 中的 base_url

base_url : http://your.domain.tld/searx/

重启服务:

sudo service nginx restart

sudo service uwsgi restart

为了更好的保护隐私,可以禁用日志,在 /etc/nginx/sites-available/default 的 uwsgi_pass 下面增加如下内容:

access_log /dev/null;

error_log /dev/null;

重启服务

sudo service nginx restart

apache

增加 wsgi mod:

sudo apt-get install libapache2-mod-uwsgi

sudo a2enmod uwsgi

增加配置内容到 /etc/apache2/apache2.conf:

Options FollowSymLinks Indexes

SetHandler uwsgi-handler

uWSGISocket /run/uwsgi/app/searx/socket

N注意,如果你的 searx 实例不是部署在根路径,需要修改 配置信息,如 .

重启 Apache:

sudo /etc/init.d/apache2 restart

禁用日志

回到配置文件 /etc/apache2/apache2.conf 在 指令上方增加:

CustomLog /dev/null combined

重启 Apache:

sudo /etc/init.d/apache2 restart

如何更新

cd /usr/local/searx

sudo -u searx -i

. ./searx-ve/bin/activate

git stash

git pull origin master

git stash apply

./manage.sh update_packages

sudo service uwsgi restart

Docker

确认你已装有 Docker ,然后使用如下命令来部署 searx:

docker pull wonderfall/searx

docker run -d --name searx -p $PORT:8888 wonderfall/searx

你也可以通过 Dockerfile 来构建 searx

git clone https://github.com/asciimoo/searx.git

cd searx

docker build -t whatever/searx .

docker搭建searx_Searx相关推荐

  1. docker搭建searx_Searx – 尊重隐私的开源搜索引擎

    Searx介绍 Searx,一个基于Python的完全开源免费搜索引擎平台,为你提供来自Google.Bing.Yahoo等70多种各大视频.图片.搜索.磁力等网站结果展示,并对搜索结果进行优化,同时 ...

  2. 使用Docker搭建svn服务器教程

    使用Docker搭建svn服务器教程 svn简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很 ...

  3. Docker 搭建elasticsearch 7.6.x集群

    Docker 搭建elasticsearch 7.6.x集群 文章目录 拉取镜像 设置Elasticsearch挂载目录 编写elasticsearch.yml配置文件 node-1 node-2 n ...

  4. 使用 Docker 搭建 Laravel 本地环境

    (原文地址:https://blog.tanteng.me/2017/...) Laravel 官方提供 Homestead 和 Valet 作为本地开发环境,Homestead 是一个官方预封装的 ...

  5. gitlab使用_如何在正确使用 Docker 搭建 GitLab

    很多程序员在内网搭建 gitlab 都搭建的坑坑洼洼,不支持 https,或者装个 gitlab 就把服务器弄得乱七八糟的,根本不知道该怎么维护和迁移.还有程序员再用最原始的,远程机器上: git - ...

  6. docker搭建gitlab

    docker搭建gitlab 在服务器上直接安装gitlab,会装入Git,Redis ,postgresql,nginx等.如果主机已有redis.nginx等,配置会比较麻烦.而且以后gitlab ...

  7. docker搭建 LNMP 环境

    一.准备镜像 安装完docker后,更换完镜像源(docker的安装十分简单自行百度即可) 打开/etc/docker目录下的daemon.json 添加以下内容 { "registry-m ...

  8. 使用Docker搭建Elasticsearch集群环境

    本篇文章首发于头条号单机如何搭建Elasticsearch集群?使用容器技术快速构建集群环境,欢迎关注头条号和微信公众号"大数据技术和人工智能"(微信搜索bigdata_ai_te ...

  9. 使用CoreOS及Docker搭建简单的SaaS云平台

    2014年是Docker大红大火的一年, DevOps这个新名词+新职位就如雨后春笋般冒出尖角,蓬勃发展起来.与时俱进,我带着一支三人团队(我自己外加两位开发人员)利用了CoreOS及Docker搭建 ...

最新文章

  1. BZOJ 1968 [Ahoi2005]COMMON 约数研究
  2. CentOS安装 Go 环境
  3. CF-567F(President and Roads) DAG必经边
  4. html css配色方案,链接css不同的配色方案问题
  5. docker上定期备份mysql数据库
  6. activiti7关联mysql_学习笔记:一个MySQL实例有多个Activiti数据库问题
  7. Django SCRF跨站点请求伪造
  8. 神经网络进行自然语言处理最佳实践
  9. 牛客网在线编程Javascript输入输出
  10. 微信开放平台申请流程讲解与注意事项(未完待续)
  11. 新闻抓取门道全面解析
  12. C#中路径表示\ 和 /
  13. 【BDTC 2016】金融大数据论坛:区块链、智能投顾、快速信贷、投资优化背后技术揭秘...
  14. ps后期调色教程,ps怎么后期调色步骤图
  15. 更改计算机的主题和桌面背景,怎么设置和更改桌面背景
  16. cer openssl 转pem_HTTPS证书转换成PEM格式
  17. LeetCode 1041. 困于环中的机器人(C++)
  18. 同期群分析(Cohort Analysis)
  19. 更新最大内码,金蝶开发
  20. win7下音频采集问题

热门文章

  1. 【MySQL】数据库设计文档生成
  2. 华为运营商级路由器配置示例 | 配置OptionC方式跨域BGP AD VPLS示例
  3. builder x/hbuilder下载和安装mac版本
  4. 记山世光老师的讲座—以计算机视觉为例的人工智能初探
  5. 使用Verilog语言实现时间计数器
  6. 用jquery实现md5加密
  7. fatkun|图片批量下载
  8. java使用geotools shp转geojson(wtk转geojson) 精度丢失
  9. 计算机病毒不能够什么
  10. 程序员升职记-汇报技巧:金字塔原理、MECE法则