You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
138 lines
6.2 KiB
138 lines
6.2 KiB
17 years ago
|
Dokeos Search Plugin Installation Guide
|
||
|
=======================================
|
||
|
|
||
|
1. Introduction
|
||
|
---------------
|
||
|
This search plugin is composed of everything you need to get up and
|
||
|
running with a full-text search feature on your Dokeos portal. However,
|
||
|
this installation is not easy, and if you are not familiar with the
|
||
|
term "indexing", or with the configuration of a Linux server, we
|
||
|
highly recommend you seek advice from a qualified system administrator
|
||
|
to help you doing this. Of course, the Dokeos company, for which I am
|
||
|
directly working, offers this kind of services. Feel free to contact
|
||
|
info@dokeos.com for a quote.
|
||
|
|
||
|
This search plugin relies on a search server, called MnogoSearch, which
|
||
|
has to be installed independently on a Linux server (the Windows
|
||
|
version, sadly, is not GPL nor free to use).
|
||
|
The following installation guides you through the steps of installing
|
||
|
the server on a Debian or Ubuntu computer, but you might probably
|
||
|
succeed in installing it on other architectures.
|
||
|
|
||
|
Dokeos has made considerable efforts to have MnogoSearch integrated
|
||
|
into the latest versions of PHP, but it would never have succeeded
|
||
|
without the help of pierre.php@gmail.com who did all the technical
|
||
|
work.
|
||
|
|
||
|
2. Installing files
|
||
|
--------------------
|
||
|
All the "conf" files and the "search.xml.php" file in this package
|
||
|
need to be revised to configure properly. Most of all, you should look
|
||
|
for a "DBAddr mysql://db_user:db_pass@db_host/db_name/?dbmode=single"
|
||
|
line in the server files to make sure it is using the correct database
|
||
|
credentials.
|
||
|
|
||
|
Now you will see that there are two directories in this plugin.
|
||
|
The "client" directory needs to stay there. The "client/www" directory
|
||
|
contains a PHP script that needs to be copied at the root of your
|
||
|
Dokeos portal (this will later give the indexing server an access to
|
||
|
your Dokeos portal).
|
||
|
|
||
|
The "server" directory has to be moved on the indexing server (which
|
||
|
might be the same as your Dokeos portal's server if it is not too
|
||
|
overloaded).
|
||
|
|
||
|
This "server" directory contains three subdirectories.
|
||
|
The "server/etc" directory contains the configuration of the
|
||
|
mnogosearch server, which typically on Debian will be located in
|
||
|
/etc/mnogosearch. Once you have installed the mnogosearch server,
|
||
|
you can pretty much overwrite the configuration with the files
|
||
|
contained in "server/etc", as they are already customised for indexing
|
||
|
Dokeos.
|
||
|
|
||
|
The "server/cron.d" directory contains an optional file that you might
|
||
|
want to put in /etc/cron.d, so that the indexing will be run every night
|
||
|
5.00am.
|
||
|
|
||
|
The "server/www" directory contains files that should be made available
|
||
|
to the public, to access idexation results. Feel free to put these, for
|
||
|
example, in /var/www/mnogosearch on your indexing server if that's where
|
||
|
Apache takes its public files.
|
||
|
|
||
|
3. Installing the search server (MnoGoSearch)
|
||
|
---------------------------------------------
|
||
|
The mnogosearch server installation comes in two parts:
|
||
|
A) installing the mnogosearch indexing server itself. This can be done
|
||
|
with a simple:
|
||
|
sudo apt-get install mnogosearch-common mnogosearch-mysql
|
||
|
B) installing the PHP5-mnogosearch bindings. This can be done by using
|
||
|
the PECL command-line installer
|
||
|
sudo pecl install mnogosearch-1.0.0
|
||
|
|
||
|
Once the server is installed, you may need to install server specific
|
||
|
additional programs to allow your indexer to go into documents (PDF,
|
||
|
Word, Excel, etc) and index the contents of these documents as well.
|
||
|
|
||
|
You can find a list of programs supposed to be there in the
|
||
|
server/etc/indexer.conf file. Search for "pdftotext" and you will find
|
||
|
the lines nearby all define a program used to translate a document
|
||
|
into pure text before indexing it. Make sure you are able to launch
|
||
|
all of these commands on the command line. If you can't, the indexing
|
||
|
server is not likely to be able to do it either...
|
||
|
|
||
|
4. Creating the DB and Dokeos user
|
||
|
----------------------------------
|
||
|
In order to keep the index data, mnogosearch requires a database to
|
||
|
store this data. It is recommended to create an alternative user, with
|
||
|
access to only one database to do this.
|
||
|
|
||
|
Once this user is configured and the DBAddr line is configured in
|
||
|
server/etc/indexer.conf, you can create the database structure by
|
||
|
calling (on the indexing server):
|
||
|
indexer -Ecreate indexer.conf
|
||
|
|
||
|
The next step is to create a Dokeos user for the purpose of indexing
|
||
|
your courses (the user needs access to all courses to be able to index
|
||
|
them). Create a simple user in the Dokeos administration interface. Then
|
||
|
get his ID (you can get it by hovering the edition icon in the users
|
||
|
list: the user id is the number that shows after "user_id" in the URL)
|
||
|
and use it inside indexer_login.php to replace the 'xxx' value.
|
||
|
|
||
|
Also configure the IP address and the host name of the indexing server
|
||
|
inside this file.
|
||
|
|
||
|
Once these two steps are complete, you can start the first indexation
|
||
|
of your portal, by calling, on the command line of your indexing server:
|
||
|
indexer -N10 index.conf
|
||
|
N10 lets you limit the number of simultaneous threads that your indexing
|
||
|
server will be allowed to use. More than 10 might put your Dokeos portal
|
||
|
in overload. You might want to reduce this number to 3 for light servers.
|
||
|
|
||
|
5. Installing the plugin
|
||
|
------------------------
|
||
|
Installing the plugin is done by dispatching the files contained in
|
||
|
this plugin as described in "2. Installing files", and configuring the
|
||
|
various *.conf.php files as well as server/etc/indexer.conf and
|
||
|
server/www/search.xml.php
|
||
|
|
||
|
Once the files have been moved and configured, you will still need to
|
||
|
index some data, then activate the plugin inside the Dokeos
|
||
|
administration panel. Then, basically, you should be able to use
|
||
|
the plugin straight away.
|
||
|
|
||
|
6. International use
|
||
|
--------------------
|
||
|
To keep this plugin small, we had to remove a considerable amount of
|
||
|
international-parsing helper files. If you need one for your language,
|
||
|
it may well be included in the default installation file for the
|
||
|
Debian mnogosearch-common package.
|
||
|
|
||
|
If not, you should check more recent versions of mnogosearch on its
|
||
|
website: http://www.mnogosearch.org/
|
||
|
|
||
|
7. Seek help
|
||
|
------------
|
||
|
Commercial suppport is available for the configuration and remote use
|
||
|
of this plugin at info@dokeos.com
|
||
|
If you have plenty of time to learn it by yourself or any other reason,
|
||
|
you might find some free help on our forums: http://www.dokeos.com/forum
|