From 968484ddf65e02f40276e9c0ae7aee9409e23f16 Mon Sep 17 00:00:00 2001 From: Jean-Francois Dockes Date: Sat, 26 Nov 2016 09:40:38 +0100 Subject: [PATCH] web --- website/devel.html | 13 ++- website/download.html | 6 +- website/index.html.en | 12 +- website/index.html.fr | 2 +- website/pages/recoll-webui-install-wsgi.txt | 116 +++++++++++++++++--- website/release-1.22.html | 9 ++ 6 files changed, 130 insertions(+), 28 deletions(-) diff --git a/website/devel.html b/website/devel.html index d720b3eb..22a9be9a 100644 --- a/website/devel.html +++ b/website/devel.html @@ -29,9 +29,18 @@
+

Contributing to Recoll developement and availability

+ +

If you are not a software developer, or have no time + available for testing the application of thinking about how it + could be improved, there is always the possibility of + contributing a donation, which will be much appreciated !
+ + +

+

If you wish to become involved in the development of Recoll, you are very much welcome, - please send me an Recoll, please send me an email.

Translation

diff --git a/website/download.html b/website/download.html index 13577705..208a1dc1 100644 --- a/website/download.html +++ b/website/download.html @@ -69,7 +69,7 @@

General information

-

The current version is 1.22.3. Release +

The current version is 1.22.4. Release notes.

Recoll Installation / building @@ -116,12 +116,12 @@

Source

-

Current release distribution: 1.22.3:

+

Current release distribution: 1.22.4:

-

recoll-1.22.3.tar.gz.

+

recoll-1.22.4.tar.gz.

The release notes.

Previous production release 1.21.7:

diff --git a/website/index.html.en b/website/index.html.en index 0e86ce48..74bc404f 100644 --- a/website/index.html.en +++ b/website/index.html.en @@ -59,14 +59,14 @@

The current Recoll version is - 1.22.3 + 1.22.4 (Release notes, known bugs, Release history).

Recoll is based on the very - strong Xapian search + capable Xapian search engine library, for which it provides a powerful text extraction layer and a complete, yet easy to use, Qt graphical interface.

@@ -98,7 +98,10 @@
- +
2016-11-25
Release 1.22.4 is available and fixes + an ennoying qt5 glitch (advanced search 'start search' + button doing nothing).
+
2016-06-21
Release 1.22.3 is available. This is going to replace 1.21 as the main release. See the the release @@ -112,7 +115,8 @@ Web UI with Apache, and found out that this is really easy, actually both easier to set up and - more useful than running it standalone.
+ more useful than running it standalone. Recently added: + instructions for running with Nginx instead of Apache.
2016-04-18
Found a GUI crash bug with a reasonably easy workaround.
diff --git a/website/index.html.fr b/website/index.html.fr index 4a0fa414..99093865 100644 --- a/website/index.html.fr +++ b/website/index.html.fr @@ -106,7 +106,7 @@

Nouvelles:

- + 2016-11-23
Version 1.22.4.
2016-06-15
La version 1.22.3 est disponible et va progressivement remplacer 1.21 comme version principale. Notes de version diff --git a/website/pages/recoll-webui-install-wsgi.txt b/website/pages/recoll-webui-install-wsgi.txt index 237923eb..33ce3b6c 100644 --- a/website/pages/recoll-webui-install-wsgi.txt +++ b/website/pages/recoll-webui-install-wsgi.txt @@ -1,4 +1,6 @@ -= Recoll WebUI Apache installation from scratch += Recoll WebUI Apache and nginx installation from scratch + +NOTE: thanks to Michael L. Wilson for the `nginx` part. The https://github.com/koniu/recoll-webui[Recoll WebUI] offers an alternative, WEB-based, interface for querying a Recoll index. @@ -22,7 +24,7 @@ and, especially can't efficiently leverage the now ubiquitous multiprocessors. In multi-user situations, you can get better performance and ease of use -from the Recoll WebUI by running it under Apache rather than as a +from the Recoll WebUI by running it under Apache or Nginx rather than as a standalone process. With this approach, a few requests per second can easily be handled even in the presence of long-running ones. @@ -34,20 +36,24 @@ The instructions about using the WebUI under Apache as given in the repository README are a bit terse, and are missing a few details, especially ones which impact performance. -Here follows the synopsis of two WebUI installations on initially -Apache-less Ubuntu (14.04) and DragonFly BSD systems. The first should -extend easily to other Debian-based systems, the second at least to -FreeBSD. rpm-based systems are left as an exercise to the reader, at least -for now... +Here follows the synopsis of three WebUI installations on initially +Apache-less Ubuntu (14.04) and DragonFly BSD systems, and for +Nginx/BSD. The first should extend easily to other Debian-based systems, +the second at least to FreeBSD. rpm-based systems are left as an exercise +to the reader, at least for now... CAUTION: THE CONFIGURATIONS DESCRIBED HAVE NO ACCESS CONTROL. ANYONE WITH ACCESS TO THE NETWORK WHERE THE SERVER IS LOCATED CAN RETRIEVE ANY DOCUMENT. -== On a Debian/Ubuntu system +link:#nginx[Jump to the nginx section]. -=== Install recoll +[[apache]] +== Apache +=== On a Debian/Ubuntu system + +==== Install recoll sudo apt-get install recoll python-recoll @@ -60,13 +66,13 @@ Take care to be logged in as the user you want to run the web search as while you do this. -=== Install the WebUI +==== Install the WebUI Clone the github repository, or extract the master tar installation, and move it to '/var/www/recoll-webui-master/'. Take care that it is read/execute accessible by your user. -=== Install Apache and mod-wsgi +==== Install Apache and mod-wsgi sudo apt-get install apache2 libapache2-mod-wsgi @@ -75,7 +81,7 @@ I then got the following message: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message -To clear it, I added a ServerName directive to the apache config, maybe you +To clear it, I added a ServerName directive to the Apache config, maybe you won't need it. Edit '/etc/apache2/sites-available/000-default.conf' and add the following at the top (globally). Things work without this fix anyway, this is just to suppress the error message. You probably need to adjust the @@ -106,7 +112,7 @@ specify multiple threads on the WSGIDaemonProcess line. Specify multiple processes instead to put multiple CPUs to work on simultaneous requests. -Then run the following to restart apache: +Then run the following to restart Apache: sudo apachectl restart @@ -120,9 +126,9 @@ not found (the page looks weird and the search does not work). CAUTION: THERE IS NO ACCESS CONTROL. ANYONE WITH ACCESS TO THE NETWORK WHERE THE SERVER IS LOCATED CAN RETRIEVE ANY DOCUMENT. -== Variant for BSD/ports +=== Apache Variant for BSD/ports -=== Packages +==== Packages As root: @@ -142,7 +148,7 @@ Add apache24_enable="YES" in /etc/rc.conf pkg install ap24-mod_wsgi4 pkg install git -=== Clone the webui repository +==== Clone the webui repository cd /usr/local/www/apache24/ git clone https://github.com/koniu/recoll-webui.git recoll-webui-master @@ -159,7 +165,7 @@ the 'import os' line: -=== Configure apache +==== Configure Apache Edit /usr/local/etc/apache24/modules.d/270_mod_wsgi.conf @@ -191,10 +197,84 @@ Contents of the file: Require all granted -=== Restart apache +==== Restart Apache As root: apachectl restart +[[nginx]] +== Nginx +=== Nginx for BSD/ports + +As root: + + pkg install recoll + +Do what you need to do to configure the indexing and check that the normal +search works. Take care to be logged in as the user you want to run the web +search as while you do this. + +Install required packages: + + pkg install nginx uwsgi git + +=== Nginx: clone the webui repository + + rm /usr/local/www/nginx + mkdir /usr/local/www/nginx + cd /usr/local/www/nginx + git clone https://github.com/koniu/recoll-webui.git recoll-webui-master + +Important: most input handler helper applications (e.g. 'pdftotext') are +installed in '/usr/local/bin' which is not in the PATH as seen by Nginx +(at least on DragonFly). The simplest way to fix this is to modify the +launcher module for the webui app so that it fixes the PATH. + +Edit 'recoll-webui-master/webui-wsgi.py' and add the following line after +the 'import os' line: + + os.environ['PATH'] = os.environ['PATH'] + ':' + '/usr/local/bin' + +Also change the following to find the correct path: + + #os.chdir(os.path.dirname(__file__)) + os.chdir('/usr/local/www/nginx/recoll-webui-master') + + +=== Nginx: configure uWSGI + +Assuming the user running the search is "dockes" (change it to your user), + +sysrc uwsgi_uid=$(id -u dockes) +sysrc uwsgi_gid=$(id -g dockes) +sysrc uwsgi_flags="-M -L --wsgi-file /usr/local/www/nginx/recoll-webui-master/webui-wsgi.py" + +(ALTERNATIVELY) + +Add the following to rc.conf + +uwsgi_uid="dockes" +uwsgi_gid="dockes" +uwsgi_flags="-M -L --wsgi-file /usr/local/www/nginx/recoll-webui-master/webui-wsgi.py" + + +=== Configure nginx + +Edit /usr/local/etc/nginx/nginx.conf and set up a proxy to uwsgi service: + + location / { + include uwsgi_params; + uwsgi_pass unix:///tmp/uwsgi.sock; + } + +=== Enable and start both services + +As root: + + sysrc uwsgi_enable=YES #Or uwsgi_enable="YES" (in rc.conf) + sysrc nginx_enable=YES #Or nginx_enable="YES" (in rc.conf) + + service uwsgi start + service nginx start diff --git a/website/release-1.22.html b/website/release-1.22.html index 1c3b666a..69353e49 100644 --- a/website/release-1.22.html +++ b/website/release-1.22.html @@ -106,6 +106,15 @@

Minor releases

    +
  • 1.22.4: +
      +
    • Fix advanced search 'start search' button doing + nothing under qt5.
    • +
    • Fix html escaping with newer versions of + pdftotext.
    • +
    • New Danish and Dutch messages.
    • +
    +
  • 1.22.3:
    • Python module: do not limit result fetches to initial