Outils pour utilisateurs

Outils du site


searx

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

searx [2015/01/18 20:49] (Version actuelle)
admin créée
Ligne 1: Ligne 1:
 +====== Searx ======
  
 +Searx est un méta-moteur de recherche. Il permet la protection de la vie privée étant donnée que les requêtes sont réalisées par le serveur et non par le navigateur.
 +
 +===== Installation ======
 +
 +Installer les dépendances :
 +
 +<code bash>
 +apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-pybabel zlib1g-dev
 +</​code>​
 +
 +Installer searx :
 +
 +<code bash>
 +cd /usr/local
 +git clone https://​github.com/​asciimoo/​searx.git
 +useradd searx -d /​usr/​local/​searx
 +chown searx:searx -R /​usr/​local/​searx
 +</​code>​
 +
 +Installer les dépendances dans un environnement virtuel :
 +
 +<code bash>
 +sudo -u searx -i
 +cd /​usr/​local/​searx
 +virtualenv searx-ve
 +. ./​searx-ve/​bin/​activate
 +pip install -r requirements.txt
 +python setup.py install
 +</​code>​
 +
 +===== Configuration ======
 +
 +<code bash>
 +sed -i -e "​s/​ultrasecretkey/​`openssl rand -hex 16`/g" searx/​settings.yml
 +</​code>​
 +
 +Éditer si nécessaire ''​searx/​settings.yml''​
 +
 +Vérifier en démarrant searx :
 +
 +<code bash>
 +python searx/​webapp.py
 +</​code>​
 +
 +Aller à ''​http://​localhost:​8888''​…
 +
 +À ce point, searx n'est pas démonisé. Uwsgi va permettre cela :
 +
 +Sortir du virtualenv et se déloguer de l'​utilisateur searx.
 +
 +===== uwsgi =====
 +
 +Installer les paquets :
 +
 +<code bash>
 +apt-get install uwsgi uwsgi-plugin-python
 +</​code>​
 +
 +Créer le fichier de configuration ''/​etc/​uwsgi/​apps-available/​searx.ini''​ et y mettre le contenu suivant :
 +
 +<code bash>
 +[uwsgi]
 +# Who will run the code
 +uid = searx
 +gid = searx
 +
 +# 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
 +
 +# 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/​
 +</​code>​
 +
 +Activer l'​application uwsgi et redémarrer :
 +
 +<code bash>
 +cd /​etc/​uwsgi/​apps-enabled
 +ln -s ../​apps-available/​searx.ini
 +/​etc/​init.d/​uwsgi restart
 +</​code>​
 +
 +===== Serveur Web ======
 +
 +==== Avec Nginx ====
 +
 +<code bash>
 +sudo apt-get install nginx
 +</​code>​
 +
 +Créer le fichier de configuration ''/​etc/​nginx/​sites-available/​searx''​ avec ce contenu :
 +
 +<code nginx>
 +server {
 +    listen 80;
 +    server_name searx.example.com;​
 +    root /​usr/​local/​searx;​
 +
 +    location / {
 +            include uwsgi_params;​
 +            uwsgi_pass unix:/​run/​uwsgi/​app/​searx/​socket;​
 +    }
 +}
 +</​code>​
 +
 +Redémarrer le service :
 +
 +<code bash>
 +service nginx restart
 +service uwsgi restart
 +</​code>​
 +
 +OU (si sous-répertoire) :
 +
 +<code bash>
 +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;​
 +}
 +</​code>​
 +
 +Activer l'url de base dans ''​searx/​settings.yml''​
 +
 +<code bash>
 +base_url : http://​your.domain.tld/​searx/​
 +</​code>​
 +
 +Relancer le service :
 +
 +<code bash>
 +service nginx restart
 +service uwsgi restart
 +</​code>​
 +
 +==== Avec Apache ====
 +
 +Ajouter le module ''​wsgi''​ :
 +
 +<code bash>
 +apt-get install libapache2-mod-uwsgi
 +a2enmod uwsgi
 +</​code>​
 +
 +Ajouter cette configuration dans le VirtualHost ou dans ''/​etc/​apache2/​apache2.conf''​ :
 +
 +<code apache>
 +<​Location />
 +    Options FollowSymLinks Indexes
 +    SetHandler uwsgi-handler
 +    uWSGISocket /​run/​uwsgi/​app/​searx/​socket
 +</​Location>​
 +</​code>​
 +
 +Redemmarer Apache :
 +
 +<code bash>
 +service apache2 restart
 +</​code>​
 +
 +
 +===== Modifications (ou pas…) persos ======
 +
 +  *Modification de la configuration pour changer le thème par défaut dans ''/​usr/​local/​searx/​searx/​settings.yml''​ :
 +
 +<code bash>
 +    default_theme : default # ui theme
 +</​code>​
 +
 +  *Ajout de l'​image principale modifiée dans ''/​usr/​local/​searx/​searx/​static/​themes/​default/​img/​searx.png''​
 +
 +  *Modification du CSS pour que ça passe en hauteur. Fichier ''/​usr/​local/​searx/​searx/​static/​themes/​default/​css/​style.css'',​ modifier la règle ''​div.title''​ pour qu'​elle ressemble à cela (ajouter un ''​padding''​ à la fin) :
 +
 +<code css>
 +div.title{background:​url('​../​img/​searx.png'​) no-repeat;​width:​100%;​min-height:​80px;​background-position:​center;​padding:​10px 0}
 +</​code>​
 +
 +  *Enlever le bandeau "Fork me on Github"​ en commentant le contenu du fichier ''/​usr/​local/​searx/​searx/​templates/​default/​github_ribbon.html''​ :
 +
 +<code html>
 +<!--
 +<a href="​https://​github.com/​asciimoo/​searx"​ class="​github">​
 +    <img style="​position:​ absolute; top: 0; right: 0; border: 0;" src="​{{ url_for('​static',​ filename='​img/​github_ribbon.png'​) }}" alt="​Fork me on GitHub" ​ class="​github"/>​
 +</a>
 +-->
 +</​code>​
searx.txt · Dernière modification: 2015/01/18 20:49 par admin