Mettre en place un serveur WEB
par l’exemple

Table des matières

I Procédure pour créer un nom chez un REGISTRAR (ex : Gandi)	5

I.1 Enregistrer son domaine : mode d’emploi avec Gandi	5

I.2 Les gestionnaires de noms de domaines	5

I.2.a Etape 1 : Vérifier si le nom souhaité est libre	6

I.2.b Etape 2 - Comparer les prestations et les prix	6

I.2.c Etape 3 - Déposer et payer le nom de domaine	7

I.2.d Etape 4 - Rediriger le nom vers votre site	8

I.2.e Etape 5 - Choisir une adresse e-mail	8

II Gérer la redirection des adresses IP ainsi que votre Firewall	9

III Procédure pour installer debian sarge 3.1 rc1 i386 :	10

III.1 Création de l’image ISO avec CdRecord (CDR Tools)	10

III.2 Installation de la DEBIAN Sarge 3.1 avec debian-installer ( http://www.debian.org/devel/debian-installer/ )	10

III.2.a Démarrage de l’installation	10

III.2.b Configurer le réseau	10

III.2.c Partitionner les disques avec l'outil partman	11

III.2.d Installer le programme de démarrage GRUB sur un disque dur (ex LILO)	12

III.2.e Terminer l'installation - Sortir le Cd-Rom	12

III.3 Redémarrage	12

III.3.a Configuration du système de base de Debian	12

III.3.b Configuration de passwd	13

III.3.c Configuration de l’outil Debian de gestion des paquets (apt)	13

III.3.d Sélection des logiciels Debian	13

III.3.e Dans l’interface de sélection des paquets : Aptitude	13

III.3.f Configuration de console-data	14

III.3.g Configuration Exim v4 :	14

III.3.h Fichier de configuration.	14

III.3.i Configuration du système de base débian	14

III.4 Suppression de Exim4 pour préparer l’installation d’alternc	15

III.4.a Accéder à l’interface de configuration pour appliquer les dernières modifications.	15

III.4.b Choix des logiciels Debian	15

III.5 A propos de locales	15

III.5.a Commandes pour modifier les variables locales :	15

III.5.b Installer l’utilitaire « midnight commander »	16

III.5.c Configuration de discover (hardware identification system) :	16

III.5.d Fin de l'installation	17

IV Installation d'AlternC sur un serveur	18

IV.1 Installation de Debian GNU/Linux	18

IV.1.a Mise à jour Debian	18

V Installation d'AlternC (généralités)	19

V.1 Pré Requis	19

V.2 INSTALLATION	21

VI Installation AlternC (Commandes)	22

VI.1 Nos commandes :	22

VI.1.a Mise a jour des paquets debian :	22

VI.1.b Pour ouvrir l’utilitaire mc.	22

VI.1.c Problèmes de dépendance pour l'installation d’Alternc	22

VI.1.d Mise a jour des paquets debian :	23

VI.1.e Lancement de l’installation d’alternc	23

VI.1.f Outils de configuration debian :	23

VI.1.g Postfix	23

VI.1.h Postfix configuration	23

VI.1.i Configuration de apache	24

VI.1.j Configuration du courrier	24

VI.1.k Configuration de Mysql-Server	24

VI.1.l Configuration de PHPMYADMIN :	24

VI.1.m Configuration de ProFTPd	24

VI.1.n Configuration de quota	24

VI.1.o Ca-certificates configuration	24

VI.1.p AlternC	25

VI.1.q Configurer le certificat ssl (Configure an ssl certificate)	25

VI.1.r Vérifier le fichier de configuration	26

VI.1.s Fichier alternc.conf attendu :	26

VI.1.t Validation des modifications :	28

VI.1.u Test de connexion :	28

VII installation du domaine ca15.org	29

VII.1.a Connections au serveur	29

VII.1.b Gestion des TLD (top-level domain):	29

VII.1.c Configuration des quotas par défaut :	30

VII.1.d Création du membre intranet	30

VII.1.e Création et configuration du domaine :	31

VII.1.f Création d’une simple page d’accueil - Index.html	32

VIII Création des sous-domaines	33

VIII.1.a Redirection de ca15.org vers www.ca15.org (un exemple de redirection)	34

VIII.1.b Création du compte ftp	35

VIII.1.c Création de la base Mysql	35

VIII.2 Déclaration du domaine auprès de Accessnet	36

IX Installation de CACTI	36

IX.1 Préambule	36

IX.2 Pré requis à l’installation d’AlternC-cacti	36

IX.2.a Nous passerons en revu les phases d’installation de Cacti	37

IX.3 Installation du module alternc-cacti	37

IX.4 Création de la base de données CACTI	37

IX.5 Installer Cacti	38

IX.6 Configuration de AlternC-cacti	38

IX.7 Création d'un utilisateur Cacti	39

IX.8 Configuration de Cacti	39

IX.9 Installation de CACTI	40

IX.10 Importation des modèles de configuration pour CACTI	42

IX.11 Ajout des serveurs Alternc	42

X Installer AWSTATS :	45

XI Installation de SSH	46

XII Installation de SPIP1.8 :	47

XII.1 Prérequis :	47

XII.1.a Coté serveur :	47

XII.1.b Installation avec leechFTP :	47

XII.1.c Sélection de la langue :	49

XII.1.d Configuration de la base de données :	49

XII.1.e Création de l’accès personnalisé LDAP:	53

XII.1.f Création de l’accès à l’annuaire LDAP :	54

XII.1.g Fin de l’installation :	58

XIII Le moteur de recherche de SPIP	58

XIII.1 Principe	58

XIII.2 L’indexation	59

XIII.3 La recherche	60

XIII.4 Performances	60

XIII.4.a Rapidité	60

XIII.4.b Qualité	60

XIII.4.c Espace disque	61

XIV Comment fonctionne le moteur de recherche de SPIP ?	62

XIV.1 Voici les principes sur lesquelles reposes le moteur de SPIP.	62

XIV.2 L’indexation	63

XIV.3 La pondération	63

XIV.4 Où est-ce stocké ?	65

XIV.5 Quels mots sont indexés ?	65

XIV.6 Quand a lieu l’indexation ?	67

XIV.7 La recherche	67

XV Mise en pratique de la recherche dans SPIP	69

XV.1 Mise en pratique	71

XV.1.a Vérifier le contenu de l’indexation	71

XV.1.b Insérer un article dans SPIP	72

XV.1.c Incorporation d’une pièce jointe (Document Word)	72

XVI Installer imagick :	73

XVI.1 Pour SPIP – Pour la création de vignettes	73

XVI.2 Pour Coppermine (Logiciel de gestion d’une Photothèque)	74

XVI.2.a Installation classique Debian	74

XVI.2.b Installation sur une plate forme Unix	74

XVII Installation de Coppermine	74

XVII.1.a Préambule - Configurer php.ini	74

XVII.1.b Création de la base de données dans Alternc	75

XVII.1.c Installation	75

XVIII Paramétrage de Coppermine – Quelques astuces	75

XIX Installer Samba :	76

XIX.1.a Installer un utilisateur Samba	76

XIX.1.b Configuration de /etc/samba/smb.conf	76

XIX.1.c Démarrage du serveur :	77

XX Installer MNGOSEARCH	77

XX.1 Pré-requis pour l’installation de MnoGoSearch	77

XX.2 Installer make	77

XX.3 Installer g++	78

XX.4 Installer zlib-bin	78

XX.5 Installer zlib1	78

XX.6 Installer libmysqlclient10-dev (Connexion à MySQL)	78

XX.7 Installer xpdf-utils – 3.00-13 (Lire les fichiers PDF)	78

XX.8 Installer catdoc – 0.93.4-2 (Lire les fichiers Word)	79

XX.9 Installer ppthtml – 0.5.1-2 (Lire les fichiers PowerPoint)	80

XX.10 Créer l’utilisateur mnogosearch dans AlternC	82

XX.10.a Modification des droits pour l’utilisateur mnogosearch	82

XX.11 Installer mnogosearch	83

XX.11.a Créer le fichier indexer.conf et positionner la variable	85

XX.11.b Création des tables :	85

XX.11.c Lancer l’indexer	85

XX.11.d Installer les scripts de recherche	85

XX.11.e Repertoire cgi-bin (Perl, ...) independant pour chaque domaine	86

XXI Annexe	88

XXI.1 Procédure pour l’installation de SPIP AGORA	88

XXI.1.a Installation de PEAR pour l’installation de SPIP AGORA :	88

XXI.1.b Installation de SPIP-AGORA :	88

XXI.1.c Sélection de la langue :	90

XXI.1.d Configuration de la base de données :	90

XXI.1.e Création de l’accès personnalisé :	93

XXI.1.f Fin de l’installation :	94

XXI.1.g Problème de memory size :	94

XXI.1.h 1ere solution :	94

XXII Quelques petits outils bien pratiques pour agrémenter SPIP	96

XXII.1 Utiliser les contributions pour SPIP :	96

XXII.1.a L’éditeur WYSIWYG HTMLAREA 3.0 sous SPIP :	96

XXIII Gestion des paquets DEBIAN	98

XXIII.1 Introduction	98

XXIII.2 dpkg : installer et configurer un paquet	98

XXIII.2.a Travaux Pratiques - Gestion des paquets	98

XXIII.2.b Travaux Pratiques - Obtenir des informations sur les paquets déjà installés	99

XXIII.3 Utilitaires apt	99

XXIII.4 Fonctionnement	99

XXIII.4.a Travaux Pratiques - Exemple de configuration des sources de paquets /etc/apt/sources.list	100

XXIII.4.b Travaux Pratiques	100

XXIII.5 Commandes	101

XXIII.5.a Travaux Pratiques	101

XXIII.6 Développement de Debian	102

XXIII.7 Voici la structure du répertoire debian	103

XXIII.8 Passer à la distribution testing ?	103

XXIII.8.a Travaux Pratiques	103

Procédure pour créer un nom chez un REGISTRAR (ex : Gandi)

Enregistrer son domaine : mode d’emploi avec Gandi

Il est relativement simple d’obtenir une adresse Internet professionnelle, par exemple : www.mondomaine.com pour votre site Web et contact@mondomaine.com pour vous contacter. Son coût ? 12 euros pour un an, à renouveler les années suivantes.

L’adressage sur Internet a été divisé en domaines que l’on reconnaît à leur suffixe (ou Top Level Domain). Il existe des domaines internationaux (.com, .net, .org pour les plus connus) plus des nationaux : .fr pour la France, .it pour l’Italie... Dans le jargon informatique, une adresse s’appelle un nom de domaine. Il existe également des sous-domaines (ou extensions), qui peuvent être réservés à des catégories d’usagers : particuliers, entreprises, associations, organismes gouvernementaux, etc (.asso.fr, .gouv.fr, par exemple).

Les gestionnaires de noms de domaines

Le nommage est géré par des organismes spécialisés, par exemple l’InterNic pour les domaines internationaux et l’Afnic pour la France. De même l’enregistrement est réalisé par des sociétés intermédiaires (les "registrars") qui effectuent les démarches à votre demande.

Ces registrars, ou bureaux d’enregistrement, sont très nombreux, il s’agit soit de prestataires de services Internet pour les entreprises, soit d’hébergeurs de sites. Le service de base consiste à réserver pour vous un nom de domaine pour une ou deux années. Ils reversent ensuite une partie à l’organisme correspondant.

Les tarifs varient beaucoup d’un registrar à l’autre, mais aussi d’un domaine à l’autre car chaque organisme de nommage édicte ses propres règles. Le domaine .com fonctionne selon la règle du "premier arrivé, premier servi" et les tarifs des registrats pour ce domaine sont assez bas. Le domaine .fr se caractérise par une organisation stricte, la nécessité de fournir des justificatifs sur la "propriété" du nom que l’on souhaite déposer (K-bis, marque déposée à l’INPI, etc.), un découpage en sous-domaines, qui limitent les homonymies... et par des tarifs plus élevés. Le prix demandé par le registrar dépend aussi des prestations annexes comme la fourniture d’adresses Internet, le suivi des visites, la maintenance, etc.

Le travail du registrar ne s’arrête pas là. Il lui faut ensuite associer votre site à votre nouvelle adresse via un serveur de nom de domaine (ou DNS), qui aiguillera l’appel d’un ordinateur vers votre site, où qu’il se trouve. Ce service, appelé redirection (forwarding), rendra votre nouvelle adresse fonctionnelle.

Voici comment déposer un nom de domaine en cinq étapes :

Etape 1 : Vérifier si le nom souhaité est libre

Rendez-vous à l’adresse : http://www.gandi.fr/whois?l=FR. Vous saisissez votre choix de domaine, par exemple "mondomaine.com" et vous validez. En résultat, vous pouvez avoir :
Le domaine est déjà enregistré : "Le domaine MONDOMAINE.COM est enregistré chez Gandi." ou "Le domaine AMAZONE.COM existe, et il est enregistré chez un autre Registrar."
Le domaine est libre : "Le domaine ZESTMONDOMAINE.COM n’existe pas. Vous pouvez le créer chez Gandi pour profiter de nos services, comme nos redirections Web et emails."

Etape 2 - Comparer les prestations et les prix

Les prix pratiqués par les sociétés d’enregistrement de noms de domaine sont très variables : n’hésitez pas à comparer les prix à prestations égales. Les points à vérifier concernant les prestations sont :
La redirection, qui permettra de relier votre future adresse à celle actuelle de votre site
La fourniture d’une adresse e-mail.
La possibilité de renvoyer facilement et gratuitement la redirection vers un prestataire d’hébergement professionnel quand vous le souhaiterez.

Pour ce mode d’emploi, nous avons choisi le registrar français Gandi, qui facture 12 euros HT par an le dépôt du nom et la redirection des appels vers un site personnel ainsi que 5 adresse e-mail.

Pourquoi Gandi ?
La société a été créée en 1999 par des pionniers du Net en France
La société est française. Surtout, l’ensemble du site et tous leurs services sont disponibles aussi bien en français qu’en anglais
Ils sont pratiquement les seuls dans le monde à effectivement, c’est-à-dire contractuellement, attribuer la propriété des domaines à l’acheteur. La majorité des registrars ne font que louer un droit d’usage d’un service
Leur service est simple mais complet, pratique et fiable
Leurs prix sont parmi les moins chers du marché A lire aussi, de Laurent Chemla, l’un des fondateurs de Gandi, les secrets noms de domaines dans son livre entièrement disponible sur Internet : http://www.confessions-voleur.net.

Etape 3 - Déposer et payer le nom de domaine

Votre nom de domaine est libre. Vous passez donc à la première étape : l’enregistrement. Vous inscrivez le nom et sélectionnez l’extension. Vous passez l’étape suivante car vous n’avez pas d’identifiant et c’est la première fois que vous achetez un domaine (sinon, vous n’avez pas besoin de lire ce mode d’emploi).

A cette étape, Gandi vous indique :

Pour acheter zestmondomaine.com, vous allez maintenant devoir nous indiquez vos coordonnées.
Celles-ci seront utilisées pour l'enregistrement du ou des domaines achetés, et figureront dans la base de données mondiale des domaines en tant que propriétaire, contact administratif et contact de facturation.
Veillez en particulier à nous fournir une adresse email correcte et durable: en effet cette adresse nous servira à vous contacter chaque année pour vous rappeler de renouveler votre domaine.
Cette adresse sera aussi celle vers laquelle seront renvoyés les courriers électroniques concernant votre nouveau domaine (notamment les courriers de confirmation de création de votre domaine).
Les coordonnées saisies ici sont publiques et publiées dans l'annuaire WHOIS de Gandi.
Indiquez vos coordonnées réelles. En cas de litige vous risqueriez de perdre votre domaine si les informations sont fausses. De même, tout changement de propriétaire ultérieur nécessite une preuve d'identité impossible à fournir si vous indiquez ici un faux nom.

Vous remplissez le formulaire avec vos informations et coordonnées puis vous réglez le prix indiqué. Le paiement se fait le plus souvent en ligne, par carte bancaire. Gandi accepte aussi le paiement par chèque. Une fois reçu le mail de confirmation, vous saurez que votre adresse est validée.

Etape 4 - Rediriger le nom vers votre site

Une fois le nom déposé, il faudra établir la connexion avec votre page personnelle. En clair, il s’agit d’indiquer dans le formulaire l’adresse physique de votre site (en général du type http://perso-fai/home-page). Un délai de 48 H est généralement nécessaire pour que votre site soit accessible à cette nouvelle adresse.

Techniquement, la nouvelle adresse va figurer dans un serveur de nom de domaine (DNS), qui l’aiguillera vers votre site personnel. Il peut exister un DNS primaire et un DNS secondaire, ce dernier assurant la continuité en cas de panne du premier.

Etape 5 - Choisir une adresse e-mail

Profitez du dépôt de votre nom de domaine pour personnaliser votre adresse de courrier électronique. Si par exemple vous avez déposé le domaine zestmondomaine.com, vous pourrez créer une adresse du type jean-dupond@ zestmondomaine.com. Et ainsi jusqu’à 5 chez Gandi avec des pièces jointes de 5 Mo maximum.

Gérer la redirection des adresses IP ainsi que votre Firewall

Procédure pour installer debian sarge 3.1 rc1 i386 :

Création de l’image ISO avec CdRecord (CDR Tools)

CdRecord (CDR Tools) – Téléchargeable à l’adresse suivante / http://www.framasoft.net/article1453.html

CDRecord (ou CDR Tools) est tout simplement (à notre connaissance) la seule application libre de gravure de CD et DVD sous Windows (parce que pour Linux il y a par exemple K3b).

Notons qu’il permet de graver les images ISO, ce qui est tout à fait intéressant pour graver ses distributions Linux après téléchargement.

Remarque : vérifiez que votre graveur est supporté !

Il existe un logiciel en français qui rajoute une interface graphique à CDRecord (malheureusement propriétaire). Téléchargeable à l’adresse suivante : http://downloads-zdnet.com.com/CDR-Tools-Front-End/3000-2646_2-10280818.html

Installation de la DEBIAN Sarge 3.1 avec debian-installer ( http://www.debian.org/devel/debian-installer/ )

Nous avons installé Débian sur une plate forme PC de type Sempron 3000 avec 512 Mo de Ram, Carte mère Asus A7V400-MX-EAYZ un disque de 82 Go. Carte graphique intégré à la carte mère, alimentation de 450 Watts Carte réseau intégrée.10/100 Mbps

Démarrage de l’installation

Insérer le cd-rom dans le lecteur et booter le serveur (Source Les cahiers de l’Admin (Raphaël HERTZOG– Edition Eyrolles).

Appuyer sur la touche Entrée au boot

Choose language - Choisir Français

Choisir le pays ou la région - Choisir France

Choisir la disposition du clavier - Choisir Français

Attendre la détection du matériel

Configurer le réseau

Message d’accueil de configuration réseau - Appuyer sur la touche Entrée.

Si plusieurs interfaces, choisir l'interface principale - eth0

Pas de DHCP (si c'est pas le cas: s'il y a un DHCP sur le lan l'installer le trouve)

Configurer vous-même le réseau (si pas de DHCP)

Adresse IP : Mettre une « Adresse Lan privé » - Appuyer sur la touche Entrée.

Pour changer commande : /etc/network/interfaces et relancer le réseau avec la commande : /etc/init.d/networking restart

Valeur du masque-réseau : Mettre une adresse de « Masque de sous réseau » - Appuyer sur la touche Entrée.

Passerelle : Mettre une « Adresse de passerelle» - Appuyer sur la touche Entrée.

Adresse de la Passerelle du réseau local

Adresses des serveurs de nom : Mettre l’ « Adresse de votre DNS» - Appuyer sur la touche Entrée

Nom de Machine – « Mettre le nom Netbios » - Appuyer sur la touche Entrée

Ce nom correspond au nom enregistré chez votre registrar (ex : Gandi)

Pour changer commande : hostname nouveau_nom

Nom de domaine : Mettre le « Nom de domaine » - Appuyer sur la touche Entrée.

Ce domaine correspond au domaine enregistré chez votre registrar (ex : Gandi)

Partitionner les disques avec l'outil partman

 Vous pouvez choisir de supprimer les partitions existantes si vous travaillés sur un ancien disque dur. Utiliser le menu « Modifier manuellement la table de partition »

Utiliser intégralement le disque IDE1 maître (hda) ou esclave (hdb) - Appuyer sur la touche Entrée.

hda correspond au disque maître sur la nappe ide.

hdb correspond au disque esclave sur la nappe ide.

 Si l’on souhaite utiliser le gestionnaire de quota pour externaliser la création de domaine, il faut sélectionner :

Tout dans une seule partition (recommandé pour les débutants) - Appuyer sur la touche Entrée.

 Activer l’option usrquota et grpquota dans les options de montage de la partition destinée à héberger les données d’Alternc.

Sélectionner la partition primaire – Appuyer sur la touche entrée

Option de montage – Appuyer sur la touche entrée

Activer usrquota et grpquota – Appuyer sur la touche entrée

Sélectionner « Continuer » – Appuyer sur la touche entrée

Sélectionner « Fin du paramétrage de cette partition » – Appuyer sur la touche entrée

Dans notre cas de figure la gestion des quotas n’est pas exploité.

Sélectionner « Terminer le partitionnement et appliquer les changements » - Appuyer sur la touche Entrée.

Faut-il appliquer les changements sur les disques ? Choisir « Oui » - Appuyer sur la touche Entrée.

Installer le programme de démarrage GRUB sur un disque dur (ex LILO)

Installer le programme de démarrage GRUB sur le secteur d’amorcage ? Choisir « oui » - Appuyer sur la touche Entrée.

Terminer l'installation - Sortir le Cd-Rom

Installation terminée – Choisir « continuer » - Appuyer sur la touche Entrée.

Redémarrage

Configuration du système de base de Debian

Bienvenue sur votre nouveau système Débian – Choisir « ok » - Appuyer sur la touche Entrée.

Horloge système - Choisir « Non » - Appuyer sur la touche Entrée.

Choisir le fuseau horaire Europe/Paris – Choisir « Oui » - Appuyer sur la touche Entrée.

Choisir le mot de passe du super utilisateur Root - Mettre le « Mot de passe root » - Appuyer sur la touche Entrée.

Configuration de passwd

Faut-il créer un compte d’utilisateur ordinaire maintenant - Choisir « Oui » - Appuyer sur la touche Entrée. (Exemple : dupont)

Nom complet (ceci n’est pas l’identifiant ou « login ») - Mettre le « Nom complet» - Appuyer sur la touche Entrée.

Identifiant (« login ») pour votre compte utilisateur - Mettre le « Nom complet» - Appuyer sur la touche Entrée.

Mot de passe pour le nouvel utilisateur - Mettre le « Mot de passe utilisateur» - Appuyer sur la touche Entrée.

Confirmation du mot de passe utilisateur - Mettre le « Mot de passe utilisateur» - Appuyer sur la touche Entrée.

Configuration de l’outil Debian de gestion des paquets (apt)

Méthode d’accès utilisé par apt – Choisir la méthode htpp ou ftp (peut importe) - Appuyer sur la touche Entrée.

Nous avons choisi ftp.

Pays du miroir – Choisir France - Appuyer sur la touche Entrée.

Veuillez choisir le miroir Debian à utiliser – Choisir « ftp.u-strasbg.fr » - Appuyer sur la touche Entrée.

Debian réalise un test des sources d’APT. Il doit fonctionner si le réseau est configuré correctement. Ensuite il lance la réception de la liste des paquets.

Mandataire (« proxy ») http (laisser vide pour ne pas en utiliser) – Si pas de proxy (laisser la zone libre) - Appuyer sur la touche Entrée.

Sélection des logiciels Debian

Choix manuel des paquets - Suffit pour un serveur (Ne pas mettre d'environnement graphique)

[ ] Environnement graphique de bureau

[ ] …

[ ] …

[*] Choix manuel des paquets

Se positionner sur OK - Appuyer sur la touche Entrée.

Dans l’interface de sélection des paquets : Aptitude

On rentre dans l'ex dselect qui est maintenant aptitude

Taper G pour GO (Minuscule ou Majuscule)

Attendre l’installation des paquets. Téléchargement des données sur le serveur ftp ( ca devrait durer entre 5 et 6 minutes a peu prés sur la ligne adsl de la chambre d’agriculture vitesse : 121 Ko/s)

Apparaît un rapport de téléchargement

Choisir de Continuer - Appuyer sur la touche Entrée.

Configuration de console-data

Premier écran – <Ok> - Appuyer sur la touche Entrée.

Deuxième écran - Ne pas modifier le codage du clavier - Appuyer sur la touche Entrée.

Configuration Exim v4 :

Premier écran – Pas de configuration pour l’instant - Appuyer sur la touche Entrée.

Deuxième écran – Faut-il vraiment laisser le serveur de courrier non configuré Oui - Appuyer sur la touche Entrée.

Destinataire de courrier - Laisser l'utilisateur par défaut (Laurent) - Appuyer sur la touche Entrée.

Pour visualiser les mails de l'utilisateur se loguer avec l'utilisateur (su nom_de_l'utilisateur) et taper la commande mail

Lancement du dépaquetage des données… Attendre.

Fichier de configuration.

Modification du changement de version des paquets (Demande de remplacement de fichiers)

Exemple : Fichier de configuration « /etc/modprobe.d.isapnp » ou « /etc/console-tools/config »

Saisir – Y (pour Oui) - Appuyer sur la touche Entrée.

Configuration du système de base débian

Merci d’avoir choisi debian ! <ok> - Appuyer sur la touche Entrée.

Si un paquet ne passe pas taper la commande suivante à l’invité de commande – base-config

Ouvrir une console root et taper : base-config - Appuyer sur la touche Entrée

Suppression de Exim4 pour préparer l’installation d’alternc

Accéder à l’interface de configuration pour appliquer les dernières modifications.

Ouvrir une console root et taper : base-config - Appuyer sur la touche Entrée.

Choix des logiciels Debian

Choisir et installer des paquets - Suffit pour un serveur (Ne pas mettre d'environnement graphique)

[ ] Environnement graphique de bureau

[ ] …Désactiver Exim (Serveur de courrier)

[ ] …

[*] Choix manuel des paquets

Se positionner sur « OK » - Appuyer sur la touche Entrée.

Il est nécessaire de télécharger Oo d’archives. voulez vous continuer ?

Saisir Y - Appuyer sur la touche Entrée.

Aucun paquet ne sera installé, enlevé ou mis à jour [continuer] - Appuyer sur la touche Entrée.

Taper q pour quitter aptitude

Voulez-vous vraiment quitter aptitude ? [Oui] - Appuyer sur la touche Entrée.

Sélectionner Terminer la configuration du système de base - Appuyer sur la touche Entrée.

A propos de locales

Attention :

Le paquet debian 'locales' possède, au jour de l'écriture de cette documentation, un bug qui fait que la gestion des bureaux multilingue d'AlternC ne fonctionne pas par défaut. Pour résoudre cela, il suffit de reconfigurer le paquet locales avec la commande dpkg-reconfigure locales. Choisissez les langues que vous voulez activer (je vous conseille d'office : en_US(iso-8859-1 ou UTF-8) + fr_FR(iso-8859-1) + es_ES(iso-8859-1) ) puis choisissez la langue par défaut (fr_FR pour la France ...). Le paquet recalcule ensuite Réellement les locales (ce qu'il ne fait pas lors de la première installation). Notez qu'il est donc NECESSAIRE de faire cela pour qu'AlternC fonctionne correctement.

Commandes pour modifier les variables locales :

Ouvrir une console root

Saisir dpkg-reconfigure locales – appuyer sur la touche entrée.

Choix des paramètres régionaux à générer, ajouter ces trois choix de langue : Sert à la préparation d’Alternc

[*] en_US ISO-8859-1

[*] es_ES ISO-8859-1

[*] fr_FR ISO-8859-1

Puis sélectionner Ok - Appuyer sur la touche Entrée.

Quel jeu de paramètres régionaux faut-il activer par défaut ? Sélectionner fr_FR - Appuyer sur la touche Entrée.

Installer l’utilitaire « midnight commander »

A propos de Midnight commander – Boite à outils pour la gestion des fichiers sous Débian (Un mini explorateur en mode texte).

Utiliser pour cela la commande apt-get

Saisir apt-get install mc - Appuyer sur la touche Entrée.

souhaitez vous continuer ? Saisir Y - Appuyer sur la touche Entrée.

Pour la mise à jour des paquets installés deux commandes à votre disposition.

- Apt-get update (Vérifier la version des paquets)

- Apt-get upgrade (Mettre à jour les paquets)

Souhaitez vous continuer ? Saisir Y - Appuyer sur la touche Entrée.

a propos de la commande apt-get :Voir Chapitre : XXIII.3

APT (pour Advanced Packaging Tools) est le gestionnaire de packages de la distribution Debian Linux.

- apt-get install <package> Installe <package>

- apt-get update - Met à jour la liste des packages disponibles.

- apt-get upgrade - Met à jour tous les packages pouvant être mis à jour.

Configuration de discover (hardware identification system) :

Lors d’un apt-get update et apt-get upgrade, il se peut que l’on vous demande de configurer discover si oui suivre les points suivant :

Discover doit-il gérer les noms et les points de montage des lecteurs de cédéroms ? <oui> - Appuyer sur la touche Entrée.

may i update your system ? Saisir Y - Appuyer sur la touche Entrée.

Fin de l'installation

Félicitation vous venez d’installer une distribution Débian.

Installation d'AlternC sur un serveur

Ce chapitre présente l'installation d'un système AlternC sur un serveur web. Il détaille les étapes d'installation, et explique les différents pré-requis pour installer un tel serveur.

Installation de Debian GNU/Linux

AlternC s'installe sur une distribution Debian.

Mise à jour Debian

Notez qu'il est très important de mettre à jour vos paquets debian fréquemment, car des mises à jour fréquentes et importantes en terme de sécurité sont apportées a Debian GNU/Linux chaque semaine, et cela a un impact sur le serveur au moins une fois par mois.

N'oubliez donc pas d'effectuer fréquemment les commandes apt-get update puis apt-get upgrade

Il est conseillé d'installer la distribution Debian avec les conseils suivants :

* Partitionnez le disque comme vous le souhaitez. Toutefois, rappelons que le format ext2 (ou ext3) est peu pratique pour les disques de données, car ses performances sur un FS chargé sont faibles. On préfèrera ReiserFS ou XFS, tous deux non standard (sur woody tout au moins), XFS nécessitant même de recompiler un noyau linux.

* Pour desinstaller exim a la fin de l'installation de la debian, lancer base-config et déselectionner exim4.

* Dans tous les cas, la configuration des paquets standard est importante. Précisez correctement les paramètres réseaux, qui ne seront pas modifiés par AlternC. Toutefois, ne précisez pas de paquets utilisés par AlternC, comme Apache, php ou Mysql, car ceux-ci seront automatiquement installés lors de l'installation d'AlternC.

Installation d'AlternC (généralités)

Pré Requis

Une fois la Debian installée, et les paquets standard installés, allez dans /etc/apt/sources.list, et ajouter la ligne suivante à l'aide de votre éditeur préféré (emacs par exemple::..)

deb http://debian.alternc.org sarge main

deb-src http://debian.alternc.org sarge main

Problème de dépendance (sasl-bin) à l'installation

A: il faut chercher le paquet en question dans http://apt-get.org et ajouter les lignes dans votre source-list.

A: Je m'en suis sorti simplement en rajoutant la ligne suivante dans /etc/apt/sources.list :
deb http://ftp2.fr.debian.org/debian/ stable main non-free contrib
Ne pas oublier, pour les étourdis, de faire apt-get update juste après la modification du fichier /etc/apt/sources.list.

PS : En italique – test réalisé sans résultats.

A: Depuis que stable=sarge utilisation de 2 packages Woody:

apt-get install libdb2

wget http://security.debian.org/debian-security/pool/updates/main/c/cyrus-sasl/sasl-bin_1.5.27-3.1woody5_i386.deb

wget http://security.debian.org/debian-security/pool/updates/main/c/cyrus-sasl/libsasl7_1.5.27-3.1woody5_i386.deb

dpkg -i libsasl7_1.5.27-3.1woody5_i386.deb

dpkg -i sasl-bin_1.5.27-3.1woody5_i386.deb

Les paquets CVS ont réglé ce problème, qui sera publié dans le prochain release d'alternc (0.9.4).

PS : En gras le choix réalisé sur mon site

enfin, tapez apt-get update pour mettre à jour la liste des paquets disponibles puis apt-get install alternc pour lancer l'installation d'AlternC sur votre serveur.

Le paquet debian proposera d'installer automatiquement les logiciels utilisés par AlternC, par exemple apache, courier-pop-ssl, mysql-server, pdksh, etc. Confirmez avec "Y". Lors de l'installation des autres paquets, si Debian vous demande les paramètres de ceux-ci, mettez n'importe quoi, car ces paramètres seront remplacés par ceux d'AlternC.

Pour information, le paquet AlternC lui-même contient les choses suivantes :

* Les fichiers php du bureau virtuel (/usr/share/alternc/1.0/bureau) qui seront recopiés dans /var/alternc/bureau/

* Les binaires utilisés par AlternC, ainsi que les shells scripts et perl scripts. Certains de ces programmes sont SUDO sympa ou SUDO root. (/usr/lib/alternc/)

* L'ensemble des fichiers de l'installation, y compris les modèles de fichiers de configuration qui seront recopiés dans /etc. (/usr/share/alternc/1.0/install)

* Les binaires d'installation et de mise à jour situés dans /usr/sbin/alternc.install et /usr/sbin/alternc.update. Seul ROOT peut lancer ces programmes efficacement ;)

Une fois les autres paquets installés, AlternC s'installe, et vous demande uniquement de confirmer que vous voulez bien l'installer. L'installation n'est pas incluse au processus Debian d'installation, afin de ne pas tout mélanger (pour l'instant...)

Comme indiqué dans l'écran debconf d'installation d'AlternC, il faut procéder en 2 étapes :

1. Modification du fichier /etc/alternc/alternc.conf

2. Installation proprement dite par le lancement de alternc.install.

INSTALLATION

le script alternc.install n'est à exécuter que lors de la PREMIERE installation, et JAMAIS sur un serveur en production. Pour mettre à jour un serveur en production, utilisez les procédures de mise à jour UNIQUEMENT. Si vous utilisez alternc.install, celui-ci EFFACERA DEFINITIVEMENT toutes les données de tous les comptes présents sur ce serveur. Vous avez été prévenu !!!

Normalement, une fois le script d'installation terminé, tout doit fonctionner : Apache tourne, les autres services aussi, et il doit être possible de se connecter au bureau virtuel avec l'utilisateur par défaut ayant pour login "root" et pour mot de passe "root". Changez ce mot de passe dès que possible, et utilisez ce compte avec modération : c'est lui qui a les droits maximum. Je vous conseille même de créer un compte admin ayant un autre login, et de détruire le compte root ensuite.

Note : si vous modifiez un fichier de configuration ou un fichier du bureau d'AlternC, celui-ci s'en rendra compte (il conserver des checksum md5 de tous ces fichiers) et ne le mettra pas à jour lors de la mise à jour suivante. Si vous voulez valider une telle modification de VOTRE part, recalculez le md5sum du(des) fichier(s) correspondant et reposez-les dans le fichier /usr/share/alternc/checksums. Notez que dans ce cas, les fichiers revalidés seront probablement écrasés lors de la modification suivante. Si vous souhaitez rendre permanente vos modifications, modifiez plutôt les fichiers de conf situés dans /usr/share/alternc/1.0/install/etc ou les fichiers du bureau ORIGINAL dans /usr/share/alternc/1.0/bureau.

Mysql ne pourra etre installé que si votre nom d'hote non numérique est fixé par le fichier /etc/hosts

dans etc/hosts il doit y avoir une ligne du type " 10.0.0.1 nomde machine

ex : 127.0.0.1 localhost.localdomain localhost

192.15.15.171 ns0.domaineca15 ns0

Installation AlternC (Commandes)

Nos commandes :

Mise a jour des paquets debian :

Ouvrir une console

Saisir apt-get update - Appuyer sur la touche Entrée.

Saisir apt-get upgrade - Appuyer sur la touche Entrée.

Modifier le fichier sources.list situé dans /etc/apt/ avec l’utilitaire mc

Pour ouvrir l’utilitaire mc.

Ouvrir une console

Saisir mc - Appuyer sur la touche Entrée.

Vérifier la présence dans le fichier sources.list situé dans /etc/apt/ des lignes suivants :

#deb file:///cdrom/ sarge main

deb ftp://ftp.u-strasbg.fr/debian/ testing main

deb-src ftp://ftp.u-strasbg.fr/debian/ testing main

deb http://debian.alternc.org sarge main

deb-src http://debian.alternc.org sarge main

deb http://security.debian.org/ stable/updates main

deb http://ftp.debian.org/debian/ stable main non-free contrib

Cette dernière ligne permet de contourner un problème de paquet lié à sasl-bin utiliser par alternc mais supprimer de la liste des paquets sarge.

Les adresses peuvent être amenée à évoluer en fonction des nouvelles distributions proposées pour alternc. Se renseigner auprès du site http://www.alternc.org/download.php.fr

Valider la liste (F10) et quitter MC (F10)

Problèmes de dépendance pour l'installation d’Alternc

Dépendance d’AlternC – sasl2-bin

apt-get install sasl2-bin

Souhaitez-vous continuer ? – Saisir « O » et appuyer sur entrée.

Dépendance d’AlternC – sasl-bin

Problème de dépendance (sasl-bin) à l'installation, depuis que stable=sarge utilisation de 2 packages Woody:

apt-get install libdb2

wget http://security.debian.org/debian-security/pool/updates/main/c/cyrus-sasl/sasl-bin_1.5.27-3.1woody5_i386.deb

wget http://security.debian.org/debian-security/pool/updates/main/c/cyrus-sasl/libsasl7_1.5.27-3.1woody5_i386.deb

dpkg -i libsasl7_1.5.27-3.1woody5_i386.deb

dpkg -i sasl-bin_1.5.27-3.1woody5_i386.deb

Mise a jour des paquets debian :

Saisir apt-get update - Appuyer sur la touche Entrée.

Parfois des Warning apparaissent relancer la commande apt-get update jusqu’à leur disparition.

Saisir apt-get upgrade - Appuyer sur la touche Entrée.

Lancement de l’installation d’alternc

Saisir Apt-get install alternc - Appuyer sur la touche Entrée.

Souhaitez-vous continuer ? Saisir Y - Appuyer sur la touche Entrée.

Attente : Chargement des sources pendant environ 5 minutes.

Outils de configuration debian :

Postfix

Premier écran Postfix – Choisir OK - Appuyer sur la touche Entrée.

Postfix configuration

Type de configuration : Choisir Site Internet - Appuyer sur la touche Entrée.

A qui envoyer le courrier pour root ? Saisir NONE - Appuyer sur la touche Entrée.

nom de courrier : Saisir le « Nom de courrier » (ex : ns1.nomdedomaine.fr)

Pour quelles autres destinataires accepter le courrier ? (ou laisser le champ vide) – Saisir les « Destinataires de courrier » - Appuyer sur la touche Entrée.

Forcer des mises a jour synchronisées de la file d’attente des courriels ? : Choisir oui - Appuyer sur la touche Entrée.

Configuration de apache

Activer suExec – Apache : Sélectionner « Oui » - Appuyer sur la touche Entrée.

activer suExec - Apache SSL : Sélectionner « Oui » - Appuyer sur la touche Entrée.

Configuration du courrier

Créer répertoire nécessaire a l'administration Web : Sélectionner « Non » - Appuyer sur la touche Entrée.

Certificat ssl : Choisir « Ok » - Appuyer sur la touche Entrée.

Configuration de Mysql-Server

Informations d’installation : Choisir « Ok » - Appuyer sur la touche Entrée.

Veuillez consulter le fichier /usr/share/doc/mysql-server/readme.debian pour modifier le fichier /root/.my.cnf pour y placer des lignes user et password et jamais le mot de passe seul.

La connexion réseau est désactivée par défaut on peut l'activer en commentant l'option : skip-networking dans /etc/mysql/my.cnf

Configuration de PHPMYADMIN :

Serveur Web à reconfigurer automatiquement :

Choisir

[*] Apache

[*] Apache-ssl

[*] Apache-perl

[*] Apache2

Sélectionner « Ok » - Appuyer sur la touche Entrée.

Configuration de ProFTPd

Sélectionner : indépendamment - Appuyer sur la touche Entrée.

Configuration de quota

Configuration de quota : Sélectionner « Non » - Appuyer sur la touche Entrée.

Ca-certificates configuration

Sélectionner « Ok » - Appuyer sur la touche Entrée.

Faut-il agréer les certificats des nouveaux tiers de confiance - Sélectionner « Oui » - Appuyer sur la touche Entrée.

Êtes-vous CERTAIN de vouloir installer AlternC sur cet ordinateur - Sélectionner « Oui » - Appuyer sur la touche Entrée.

AlternC

Nom de domaine de bureau – Saisir le « Nom de domaine de bureau »

Nom de service d’hébergement – Saisir le « Nom de service d’hébergement » - Appuyer sur la touche Entrée.

Adresse IP interne du serveur –Saisir l’adresse « Adresse Lan privé » - Appuyer sur la touche Entrée.

Adresse IP principale de ce serveur : Saisir « l’Adresse IP principale de ce serveur » - Appuyer sur la touche Entrée.

Le mx à désigner aux nouveaux domaines Saisir « l’Adresse du MX» - Appuyer sur la touche Entrée.

Nom de domaine du serveur de DNS primaire - Saisir « Nom de domaine du serveur de DNS primaire » - Appuyer sur la touche Entrée.

Nom de domaine du serveur de DNS secondaire – Saisir « Nom de domaine du serveur de DNS secondaire » (Adresse du serveur fourni par le registrar (si on a pas de serveur secondaire)).

Nom de la partition d'alternc - /dev/hda ou /dev/hdb1 (Suivant la configuration de votre serveur – en règle général laisser le choix par défaut) - Appuyer sur la touche Entrée.

Configurer le certificat ssl (Configure an ssl certificate)

Country Name : Saisir « FR » - Appuyer sur la touche Entrée.

Département – Saisir le « Nom de votre département » - Appuyer sur la touche Entrée.

Localité - Saisir « Nom de votre ville » - Appuyer sur la touche Entrée.

Saisir le « Nom de l’organisme » - Appuyer sur la touche Entrée.

Saisir le « Nom de la division » - Appuyer sur la touche Entrée.

Nom d'hôte - Saisir « localhost » - Appuyer sur la touche Entrée.

Adresse électronique associée - Saisir « l’Adresse électronique » - Appuyer sur la touche Entrée.

Laisser se poursuivre l’installation durant 2 à 3 minutes

Faut-il redémarrer apache maintenant ? - Choisir « Oui » - Appuyer sur la touche Entrée.

c’est comme si on faisait : /etc/init.d/apache restart

Redémarrer apache-ssl - Choisir « Oui » - Appuyer sur la touche Entrée.

C’est comme si on faisait : /etc/init.d/apache-ssl restart

Vérifier le fichier de configuration

Mc (etc/alternc/alternc.conf)

Le fichier alternc.conf (/etc/alternc) doit être modifié avant l'installation, au minimum afin de vérifier que les valeurs qu'il contient sont correctes. Par défaut, des valeurs sont remplies automatiquement selon la configuration de la machine. Vérifiez ces valeurs, et modifiez-les si besoin. Le fichier de configuration explique (en anglais) comment remplir ces valeurs. Si vous souhaitez plus d'information sur le fichier de configuration, consulter la section dédié à ce fichier.

Une fois le fichier de configuration prêt, vous pouvez lancer alternc.install (de n'importe où). Assurez-vous juste que la partition /var/alternc est bien montée et que la première ligne du fichier alternc.conf n'est plus "exit" (et oui, c'est un piège pour être sur que vous ayez bien modifié ce fichier !!) L'installation efface COMPLETEMENT le contenu de /var/alternc et pose un bureau tout neuf, des bases mysql et ldap neuves, ainsi qu'un dossier DNS vierge.

Fichier alternc.conf attendu :

# lang=en_US:

#

# alternc.install configuration file

#

# WARNING! This file is automatically rewritten by debconf. To

# reconfigure alternc, use the command:

#

# `dpkg-reconfigure alternc`

#

lang=fr_FR:

#

# Ceci est le fichier de configuration de alternc.install

#

# ATTENTION! Ce fichier est automatiquement ré-écrit par debconf. Pour

# le reconfigurer AlternC, utilisez la commande:

#

# `dpkg-reconfigure alternc`

#

########################################################################

########################################################################

# Configuration générale :

# Adresse IP (ou ip/prefixe) du(des) serveur(s) dont on veut autoriser

# le ping vers nous et le status apache (pour le monitoring de

# serveur.)

monitor_ip=

# Adresse IP de la machine sur son réseau interne

internal_ip=192.15.15.171

# Adresse IP annoncee par le serveur DNS pour ce serveur. vaut

# internal_ip si on est relie directement a Internet, ou une autre ip

# sinon (Celle de votre routeur adsl par exemple ...)

public_ip=213.56.102.203

# Nom de domaine du serveur hébergé

# ATTENTION : ce domaine DOIT être de la forme sub.domaine.tld !

fqdn=ns0.ca15.org

# Nom du service d'hebergement (en toutes lettres)

hosting= Chambre d’Agriculture

# Nom de périphérique de la partition contenant /var/alternc

DATA_PART=/dev/hda (hdb1)

########################################################################

# Configuration du serveur de noms

# Adresse IP ou classe d'IP des machines à l'intérieur de notre réseau

# de confiance DNS, séparés par ';', facultatif

bind_internal=

# Nom du serveur DNS primaire (normalement, c'est le nom de la

# machine, ou un alias)

ns1=ns0.ca15.org

# Nom du serveur DNS secondaire

ns2=ns6.gandi.net

# Nom du serveur de mail (normalement, c'est le nom de la machine, ou

# un alias)

mx=ns0.ca15.org

########################################################################

# Configuration de MySQL

# Hôte contenant le serveur mysql (localhost)

dbhost=localhost

# Base de données systeme de MySQL à créer

dbname=alternc

# Nom d'utilisateur mysql réservé pour le Bureau

dbuser=alternc

# Mot de passe de l'utilisateur mysql du Bureau (ne peux pas commencer

# ou finir par un blanc)

dbpwd=ENzNZug2X3 (ceci est un exemple – Ne pas modifier)

PS : Le couple identifiant-mot de passe permet l’accès à MySql pour la gestion des droits.

########################################################################

# Configuration du Smtp

# Adresses ip des reseaux autorisés en SMTP (ou ip/prefixe) séparés

# par espace

mynetwork=

# Version d'AlternC (ne pas modifier)

version=0.9.3

Validation des modifications :

Sortir du fichier (Touche de fonction F10)

Enregistrer les modifications

Sortir de MC (Touche de fonction F10)

Ensuite lancer la commande alternc.install

Au moment de l’installation un message d’erreur peut apparaître, il est du au fait que apache ne peut se lancer car il ne trouve pas le fichier apache.conf.

Modifier le fichier httpd.conf (usr/share/alternc/install/etc/apache)

Modifier la ligne : Include /etc/phpmyadmin/apache.conf par /etc/apache/conf.d/phpmyadmin.conf

Enregistrer les modifications.

Modifier le fichier httpd.conf (usr/share/alternc/install/etc/apache-ssl)

Modifier la ligne : Include /etc/phpmyadmin/apache.conf par /etc/apache-ssl/conf.d/phpmyadmin.conf

Enregistrer les modifications.

 Copier le fichier apache.conf de ./etc/squirrelmail dans le répertoire etc/phpmyadmin/

Ensuite lancer la commande alternc.install

Faire ensuite : apache restart

Installation de alternc terminée

Test de connexion :

Dans votre navigateur taper ; http:// « Adresse du site » / on doit accéder à la page d’administration d’Alternc

Félicitation Alternc est installé

installation du domaine ca15.org

Connections au serveur

Sur un navigateur mettre l’adresse - https :// « Adresse du site » ou https:// « Adresse d’administration » (Exemple https://192.168.100.1

Alerte de sécurité voulez cous continuer ? Répondre « Oui »

Rentrer le login root et le « Mot de passe Alternc » correspondant pour se connecter en tant qu’administrateur du serveur.

Gestion des TLD (top-level domain):

Dans le menu root choisir Panneau administrateur puis gestion des TLD autorisés

Cliquer sur l’option modifier pour le TLD org

Choisir le contrôle effectué suivant dans la liste déroulante mise à disposition

Les DNS primaire ET secondaire sont vérifiés dans le WHOIS

Puis cliquer sur modifier ce TLD

Configuration des quotas par défaut :

Dans le menu root choisir Panneau administrateur puis changer les quotas par défaut

Mettre tous les quotas à 10 sauf quota_web qui lui sera à 0 dans notre cas.

Création du membre intranet

Le membre intranet gérera le compte pour le domaine www.ca15.org

Dans le menu root choisir Gérer les membres puis créer un nouveau membre

Remplir les champs du formulaire comme ci-dessous

Nom : Saisir le « Nom du Membre »

Mot de passe initial : Saisir le « Mot de passe initial du Membre »

Peut-il changer de mot de passe ? non

Nom/prénom : Saisir le « Nom et Prénom du Membre »

Adresse Email : Saisir l’ « Adresse Email du Membre »

Puis cliquer sur créer un nouveau membre

Création et configuration du domaine :

Dans le menu root choisir Gérer les membres puis se connecter en tant que intranet

Dans menu intranet choisir héberger un domaine

Remplir le formulaire comme suit :

Nom de domaine : Saisir le « Nom de domaine AlternC »

Laisser la case héberger le DNS sur le serveur cochée

Cliquer sur héberger ce nouveau domaine pour continuer

Figure 1 : Ceci est un exemple

Se déconnecter pour remettre le menu à jour et voir apparaître le domaine ca15.org.

Dans le menu intranet choisir gestionnaire de fichiers puis créer un nouveau répertoire

Créer un répertoire www qui est le répertoire qui contiendra le site intranet et un répertoire stats destiné à contenir les statistiques du domaine

Création d’une simple page d’accueil - Index.html

Dans le menu intranet choisir gestionnaire de fichiers puis cliquer sur le lien du fichier www et enfin choisir créer un nouveau fichier

Cliquer sur le nom du fichier (index.html) pour l’éditer

Saisir simplement les lignes suivantes.

<html>

<body>

<h1>Vous êtes sur le site www.ca15.org>

</body>

</html>

Dans le menu intranet choisir ca15.org

Vous devez patienter quelques minutes.

Création des sous-domaines

Dans le menu intranet choisir ca15.org

Figure 2 : Ceci est un exemple

Cliquer sur modifier dans la ligne www.ca15.org

Laissez l’option géré en local cochée et faites le pointer sur le dossier www comme suit :

Figure 3 : Ceci est un exemple

Cliquez sur valider les changements

Attendre 5 minutes, vous pouvez-vous connecter sur votre site.

Dans un premier temps vous visualiserez l’arborescence du domaine

Dans un second temps vous visualiserez le contenu du répertoire www.

Dans le menu intranet choisir ca15.org

Attendre 5 minutes – écran dans les 5 minutes.

Remarque au bout 5 minutes - la page html d’accueil rédigée précédemment si vous avez souhaité la réaliser.

Redirection de ca15.org vers www.ca15.org (un exemple de redirection)

Cliquer sur modifier dans la ligne ca15.org

Choisir l’option redirection vers une url : http://www.ca15.org

Puis cliquer sur valider les changements

Création du compte ftp

Dans le menu intranet choisir comptes ftp puis création d’un compte ftp

Créer le compte intranet_site comme ci-dessus lui choisir un mot de passe et le faire faire pointer sur le dossier /www/

Ce compte permettra au développeur de déposer le site web à l’aide d’un client ftp (ex : leechftp)

Création de la base Mysql

Dans le menu intranet choisir Bases de données

Choisir le mot de passe de la base de données puis cliquer sur

Créer ma base de données principale

l’installation est terminée le domaine est prêt à recevoir le site internet, il suffit d’utiliser un client ftp pour déposer les pages du futur site.

Déclaration du domaine auprès de Accessnet

Pour que les sous-domaines soient accessibles au sein du réseau interne, ils doivent être déclarés auprès de ACCESSNET.

Installation de CACTI

Préambule

AlternC étant un logiciel pour serveurs, il est pratique de disposer de graphiques présentant l'activité du serveur, la charge des logiciels et divers paramètres techniques (requetes apache, connexions mysql, réseau, mémoire, processeur...). Le paquet debian alternc-cacti vous permet de réaliser ces graphiques le plus simplement du monde.

Pré requis à l’installation d’AlternC-cacti

Il faut un serveur LAMP (Linux, Apache, Mysql, php4) et phpmyadmin (optionnel).

Pour ce qui est des autres dépendances :

- rddtool

- net-snmp

Pour installer alternc-cacti, il suffit de disposer d'un serveur sous AlternC et de procéder ainsi :

Assurez-vous que le fichier /etc/apt/sources.list contient bien la ligne suivante : deb http://debian.alternc.org debian/

Lancez une console, en tant que root :

apt-get update

apt-get upgrade

pour mettre à jour la liste des packages et ainsi être sur de disposer de la dernière version de alternc-cacti.

Nous passerons en revu les phases d’installation de Cacti

Installation du module alternc-cacti

Création de la base de données CACTI

Télécharger et installer alternc-cacti en tant que root.

Modifiez le fichier de configuration dans /etc/alternc/cacti.php.conf

Création d'un utilisateur Cacti

AlternC-cacti contient un programme d'extraction de données, lancé toutes les 5 minutes par cron grâce au fichier /etc/cron.d/alternc-cacti. Ce programme d'extraction de données rempli la table mysql system.cacti avec les données de statistiques du serveur. Ces données sont identifiées par les informations de la table mysql system.cacti_stid

Installation du module alternc-cacti

Ouvrir une console est faites une mise à jour du système

Apt-get update

Apt-get upgrade

Apt-get install alternc-cacti

Après installation du module une ligne nommé « Manage allowed accounts for Cacti statistics » apparaît dans le Panneau administrateur du menu root.

Création de la base de données CACTI

Dans l’interface d’administration d’Alternc (avec le login root) créer la base de données nommée CACTI.

Menu root

Menu Gérer les membres

Cliquer sur Quota dans la ligne correspondant à la l’utilisateur root (Mettre tous les quotas à 10)

Se déconnecter puis se reconnecter pour mettre à jour le menu root

Menu root

Base de données

Créer la base de données root

Créer une deuxième base de données root_cacti

Installer Cacti

Ouvrir une console sur le serveur

Apt-get install cacti

Configuration de libphp-adodb

Cliquer sur OK

Configuration de libsensors3 (Gestion des capteurs de températures)

Cliquer sur OK

Configuration de CACTI

Cliquer sur OK

Serveur MySql – Mettre localhost

Cliquer sur OK

Nom de la base de données CACTI – mettre root_cacti

Utilisateur de la base de données de Cacti – Mettre root

Saisir le mot de passe à la base de données (Choisie précédemment)

Type de serveur Web – Mettre tous

Configuration de AlternC-cacti

Pour configurer AlternC-cacti, éditez le fichier /etc/alternc/cacti.php.conf. Ce fichier contient quelques lignes à configurer comme suit :

// Which network device are we using ?

$CACTI_NET_DEV="eth0";

// Which network is the private lan (if there is a private lan ;) )

$CACTI_NET_PRIVATE="eth1";

// The server ip address (for apache server-status)

// will be replaced by 127.0.0.1 when this ip will be allowed by default for server-status ;)

$MYIP="192.15.15.171";

// Root (system) partition

$CACTI_ROOT_PART="/dev/hdb1";

// Data (/var/alternc) partition

$CACTI_DATA_PART="/dev/hdb1";

CACTI_NET_DEV est le nom de la carte réseau principale de votre serveur. La plupart du temps il s'agit de eth0.
CACTI_NET_PRIVATE est le nom de la carte réseau privée de votre serveur. C'est eth1 le plus souvent si votre serveur dispose d'une interface réseau privée. Ca n'est pas toujours le cas. Si ca n'est pas le cas, ou si vous ne savez pas, vous pouvez laisser cette valeur à eth1 ou vide.

MYIP est l'adresse ip de votre serveur. Du fait de la mauvaise configuration d'apache par AlternC avant la version 0.9.3, il est nécessaire de fournir l'ip du serveur dans la configuration. Ce paramètre disparaitra à l'avenir.
CACTI_ROOT_PART est le nom de la partition du système qui contient le système d'exploitation (/ ou /usr ou /var).

CACTI_DATA_PART est le nom de la partition du système qui contient les données AlternC des membres. (/var/alternc ou /var selon vos choix initiaux)

PS : pour savoir sur quelle partition se trouvent les fichiers consulter la table de partition /etc/fstab

voilà, c'est tout ce que vous avez besoin de configurer pour AlternC-cacti.

Ensuite, vous pouvez installer et configurer Cacti lui-même pour pouvoir utiliser ces données.

Création d'un utilisateur Cacti

Ouvrir l’interface d’administration d’alternc avec l’utilisateur root.

Menu root

Panneau administrateur

Manage allowed accounts for Cacti statistics

Configuration de Cacti

Une fois cacti installé, insérez dans votre base le fichier cacti.sql.gz présent dans le dossier /usr/share/doc/cacti/. Cela va initialiser le logiciel.

Pour réaliser cette opération je conseille à l’utilisateur de se servir de MC pour copier le fichier dans le répertoire /var/alternc/html/i/intranet qui est le répertoire de base de son compte ftp intranet pour qu’il puisse le télécharger sur son poste et effectuer l’importation sous MySql à l’aide de PhpMyAdmin.

Si vous avez installé cacti sur un serveur sous AlternC, il faut créer un lien symbolique et un alias pour cacti comme suit :

Ouvrir une console est saisir les lignes suivantes :

- ln -s /usr/bin/rrdtool /var/alternc/exec.usr/rrdtool

- ln -s /usr/share/cacti /var/alternc/bureau/cacti

Installation de CACTI

Rendez-vous ensuite à l'adresse de cacti comme suit : http://<votre serveur>/cacti/site

Cliquer sur le bouton Next

Cliquer sur le bouton Next

Vous pouvez constater que fichier nécessaire à été trouvé.

Cliquer sur Finish

Entrer le login "admin" et le mot de passe par défaut : "admin" Vous devrez les changer immédiatement.

Voici l’interface d’administration de CACTI :

Importation des modèles de configuration pour CACTI

Cliquez ensuite sur "Import Templates" pour importer le modèle de configuration pour AlternC, et coller le contenu ou allez chercher sur votre disque le fichier cacti.xml fournit avec le package AlternC-cacti dans /usr/share/doc/alternc-cacti/

Ajout des serveurs Alternc

Cliquez sur "New Graphs" puis "Create New Host" dans Cacti.

Indiquez le nom de votre serveur et choisissez "AlternC's server" comme modèle (host template). Il est inutile de remplir les informations SNMP.

attention au moment de remplir le formulaire ci-dessous, pensez a vider la case SNMP community afin de désactiver l’option snmp

Cliquez à nouveau sur "New Graphs" puis choisissez votre serveur dans la liste et cliquez sur "Edit This host", puis "Create Graphs for this Host".

Choisissez l'ensemble des graphiques que vous voulez générer, puis cliquez sur "Create".

Il vous faut alors entrer 3 paramètres par graphique (tous les mêmes) :

Le nom de votre serveur (url de la forme http://<votre serveur AlternC>/ ou https://<votre serveur AlternC> en mode SSL)

Le nom d'utilisateur cacti

Le mot de passe cacti

Le nom d'utilisateur et le mot de passe CACTI ont été définis précédemment

Dans 5 à 10 minutes, vos graphiques devraient apparaître à la page "graphs" de cacti. N'oubliez pas que par défaut, les graphiques fournis par cacti sont accessibles à tous. Pour les rendre privés, il faut désactiver le compte "Guest". Vous pouvez utiliser le menu "User Managment" pour gérer les comptes des personnes habilités à voir les graphiques de votre Cacti.

Installer AWSTATS :

mkdir /var/cache/awstats

apt-get install alternc-awstats

quota par défaut pour les statistiques : saisir 10 puis taper entrée

une fois awstats installé, se logger en tant que root sur alternc et modifier les quotas des utilisateurs afin de leur permettre de créer des jeux de statistiques

Se connecter en tant que l’utilisateur intranet afin pouvoir créer ses jeux de statistiques.

Dans le menu intranet cliquer sur statistiques web

Puis dans liste des statistiques cliquer sur gérer les utilisateurs autorisés

Ajouter un nouvel utilisateur avec un mot de passe

Revenir dans les statistiques web à l’aide du menu intranet

Cliquer sur créer un jeu de statistiques

Choisissez le nom de domaine sur lequel vous créez des statistiques

Sélectionnez l’utilisateur que vous avez crée précédemment afin de l’ajouter a la liste des utilisateur autorisés

Enfin cliquez sur le bouton créer ce jeu de statistiques.

Installation de SSH

apt-get install SSH

Faut-il autoriser uniquement la version 2 du protocole SSH ? Répondre Oui

Faut-il installer /usr/lib/ssh-keysign avec le bit SETUID activé ? Répondre Oui

Pour reconfigurer SSH et supprimer SSH-Keysign dans une console root taper dpkg-reconfigure SSH

Voulez-vous utilliser le serveur sshd ? Répondre Oui

Installation de SPIP1.8 :

Prérequis :

Coté serveur :

Installer la librairie PHP4-LDAP (Permet la connexion avec php à un annuaire LDAP)

apt-get install php4-ldap

Relancer les services web pour la prise en compte des changements

/etc/init.d/apache restart

/etc/init.d/apache-ssl restart

Installation avec leechFTP :

Télécharger SPIP à l’adresse suivante : http://www.spip.net/

Le décompresser dans un dossier

Envoyer tout les documents ainsi créés dans la racine du ftp « intranet_site » à l’aide d’un client ftp.

Ici j’utilise leech ftp qui est un client gratuit.

Le site SPIP est maintenant posé sur le serveur mais il n’est pas configuré.

Ouvrir un navigateur à cette adresse : http://mon_site_web

Maintenant taper l’adresse :http://mon_site_web/ecrire

On arrive la première page de configuration du site

La langue proposée par défaut est le français donc pas besoin de modifier, cliquer sur suivant

Sélection de la langue :

Configuration de la base de données :

Voici les informations de configuration pour cette étape :

adresse de la base de données :	localhost

login de connexion : « Mon login de la base de données»

mot de passe de connexion : « Mot de passe de la base de données »

Remplissez tout les champs et cliquez sur suivant :

Si votre base est configurée correctement on devrait obtenir un message de ce type :

Si ce n’est pas le cas vérifier la configuration de la base de donnée sur alternc pour vérifier que les données de configuration correspondent bien à celles insérées dans la page précédente de l’installation.

Dans l’écran suivant vous devrez choisir la base de données que vous utiliserez pour votre site SPIP.

Choisissez la base par défaut car alternc n’autorisera pas spip à créer par lui-même une nouvelle base(ou alors créez la base précédemment dans l’interface alternc).

Si tout se passe bien vous devriez avoir l’écran suivant :

Création de l’accès personnalisé LDAP:

Création de l’accès à l’annuaire LDAP :

Dans la case adresse de l’annuaire insérer l’adresse IP publique de votre annuaire, vérifiez le port de votre annuaire qui par défaut est le 389, puis cliquez sur suivant.

Si vous avez rempli correctement la page précédente vous devriez voir ce message :

Dans l’écran suivant, l’annuaire renvoie le schéma de votre base, vérifiez sa validité et cliquez sur suivant.

Ici vous allez régler les options d’importation des logins de l’annuaire LDAP. Nous avons choisi que chaque nouveau visiteur était uniquement un visiteur du site (donc sans accès à l’espace privé)

Cliquer sur suivant sur l’écran que vous obtiendrez tel que ci-dessous afin de pouvoir terminer l’installation de SPIP.

Rentrer vos paramètres de connexion telle qu’indiquée ci-dessous :

Signature : nom et prénom de l’administrateur SPIP (il aura tous les droits)

Ensuite son adresse email

Son identifiant et son mot de passe

Cet utilisateur sera différencié de l’annuaire LDAP. Il est administrateur du site.

Cliquer sur le bouton ajouter l’accès à LDAP.

Fin de l’installation :

Le moteur de recherche de SPIP

SPIP intègre un moteur de recherche, désactivé par défaut. Ce moteur, lorsqu’il est activé par un administrateur dans la page de configuration, permet d’effectuer des recherches sur différents types d’informations présentes dans la base de données : les articles, les rubriques, les brèves, les mots-clés et les auteurs. Depuis SPIP 1.7.1 les fils de discussion des forums (threads) et les signatures de pétitions sont également indexés.

Principe

Il y a deux grandes façons de faire un moteur de recherche. La première est de chercher tout bêtement dans le type de stockage existant (fichiers HTML, base de données... selon le type de site). Cette méthode est très lente car le type de stockage n’est pas prévu à cet effet.

La seconde méthode, qui a été choisie pour SPIP (et qui est aussi celle de tous les moteurs professionnels), est d’établir un mode de stockage spécifique aux besoins de la recherche. Par exemple, le score de chaque mots d’un article peut être stocké directement afin d’être facilement retrouvé, et d’avoir le score total d’une recherche par une simple addition. L’avantage est que la recherche est très rapide : presque aussi rapide que n’importe quel calcul de page. L’inconvénient est qu’il faut une phase de construction du dit stockage des informations : cela s’appelle l’indexation. L’indexation a un coût en termes de ressources (temps de calcul et espace disque), et elle introduit également un léger décalage temporel entre l’ajout ou la modification d’un contenu, et la répercussion de cet ajout ou de cette modification sur les résultats de recherche.

D’autre part, dans le cas de SPIP, nous sommes obligés d’utiliser PHP et MySQL comme pour le reste du logiciel, ce qui ne permet pas de réaliser un moteur très performant, en termes de rapidité, mais aussi de pertinence ou d’enrichissements divers (indexation de documents extérieurs au site, création de champs sémantiques permettant de proposer des recherches plus fines, etc.).

L’avantage du moteur interne, cependant, c’est qu’il permet de gérer l’affichage des résultats à travers les mêmes méthodes (squelettes) que le reste des pages de SPIP, et à l’intérieur du même environnement visuel.

L’indexation

L’indexation est réalisée lors des visites du site public. Afin d’éviter que le cumul d’une indexation et d’un calcul de page ne mène à un timeout sur les serveurs particulièrement lents, SPIP attend qu’une page soit affichée en utilisant le cache [1].

L’indexation traite une à une les différentes données textuelles d’un contenu donné : par exemple, pour un article, le chapo, le descriptif, le titre, le texte... Pour chaque donnée textuelle, le score de chaque mot est calculé en comptant simplement le nombre d’occurrences. A cet effet, les mots de trois caractères ou moins sont ignorés (ils sont, pour la plupart, non significatifs, et alourdiraient la base de données) ; d’autre part, les caractères accentués sont translittérés (convertis en leurs équivalents non-accentués), pour éviter les problèmes de jeux de caractères et aussi pour permettre d’effectuer des recherches en version non accentuée.

Ensuite, les scores de chaque mot sont cumulés, de façon pondérée, entre les différentes données textuelles du contenu indexé. La pondération permet, par exemple, de donner plus de poids aux mots présents dans le titre d’un article que dans le corps du texte ou le post-scriptum...

Les fonctions d’indexation peuvent être étudiées au sein du fichier ecrire/inc_index.php3. Pour mieux visualiser la dynamique d’indexation du site, vous pouvez ouvrir le fichier ecrire/data/spip.log, ou encore regarder la page ecrire/admin_index.php3 (nota : cette page, encore expérimentale, n’est pas livrée avec toutes les versions de SPIP, et n’existe qu’en français).

Dans la version [SPIP 1.6], d’importantes modifications ont été apportées au comportement du moteur :

meilleur comportement dans un environnement multilingue ;

le tiret bas (underscore) n’est plus considéré comme un séparateur de mot, mais comme un caractère alphabétique (utile pour de la documentation informatique) ;

les mots de deux lettres (et plus) ne contenant que des majuscules et des chiffres sont considérés comme des sigles, et sont indexés, ce qui supprime l’un des principaux inconvénients de la limitation de l’indexation aux mots de plus de 3 lettres (G8, CNT, ONU sont désormais indexés).

La recherche

La recherche s’effectue simplement en séparant le texte de recherche en ses différents mots ; le même filtre est appliqué que lors de l’indexation : suppression des mots de trois lettres ou moins (sauf sigles), et translittération.

Pour chaque contenu recherché, le score des différents mots est ensuite récupéré puis additionné afin d’obtenir le score total. Enfin, les résultats sont en général affichés par ordre décroissant de score ({par points}{inverse}), c’est-à-dire de pertinence (mais cela est laissé à la volonté de la personne qui écrit les squelettes de mise en page).

Performances

Rapidité

Sur un serveur récent et pas trop chargé, l’indexation d’un texte long (plusieurs dizaines de milliers de caractères) prendra entre une et deux secondes : l’attente est presque imperceptible, comparée aux délais de chargement via le réseau. Les contenus courts sont indexés de façon quasi-instantanée. Bien sûr, ces affirmations doivent être modulées selon la taille du site. Un site vraiment très gros risque de voir les temps d’indexation s’allonger légèrement ; pour relativiser, signalons qu’un site comme Le Courrier des Balkans comporte, à la date d’écriture de ce texte, environ 3 800 articles publiés, et plus de 7500 messages de forum, et que le moteur de recherche de SPIP ne donne aucun signe de faiblesse.

Par ailleurs, statistiquement, on peut considérer de façon approximative que chaque contenu ne sera indexé qu’une seule fois : compte tenu qu’il y a en général beaucoup plus de visites sur un site que de mises à jour de contenus, le surcroît de charge du serveur apparaît négligeable.

Qualité

La qualité de l’indexation est plus faible que sous des moteurs de recherche professionnels. PHP étant un langage plutôt lent, la phase d’extraction des mots a dû être simplifiée au maximum pour que les temps d’indexation restent minimes. Par conséquent, les données d’indexation comportent quelques « déchets », c’est-à-dire des morceaux de texte qui ne correspondent pas à de « vrais » mots, mais ont été indexés comme tels (il s’agit souvent de contenus techniques comme des noms de fichiers, ou de passages à la ponctuation malmenée). L’exemple d’uZine, où l’on constate environ 2 % de tels « déchets », nous laisse cependant penser que ces données sont quantité négligeable, d’autant qu’il y a peu de chance qu’elles déclenchent un résultat positif lors d’une recherche.

La recherche n’offre pas d’opérateurs booléens, l’opérateur implicite étant grosso modo un « OU » logique. Cependant, depuis SPIP 1.7.1, les articles trouvés s’affichent dans un ordre qui privilégie les résultats contenant le plus de mots orthographiés précisément selon la requête. Ainsi, une requête sur « la main rouge » mettra en évidence les articles contenant « main » et « rouge », loin devant les articles ne contenant que « maintenance » ou « rouget » - ceux-ci apparaîtront, mais plus loin dans le classement.

Espace disque

MySQL n’étant pas spécialement conçu pour le stockage de données d’indexation, l’utilisation du moteur de recherche a tendance à faire beaucoup grossir l’espace disque utilisé par la base de données. Pour donner quelque précision, disons qu’un contenu génère des données d’indexation de taille comprise entre la taille du contenu et le double de celle-ci. Donc, si l’on fait abstraction des données ne donnant pas lieu à indexation (les forums par exemple), l’indexation fait entre doubler et tripler la place prise par la base de données. Cela peut être gênant si la place vous est très comptée.

Si jamais vous désactivez le moteur de recherche afin d’économiser de l’espace disque, n’oubliez pas ensuite d’effacer les données d’indexation (dans la page de sauvegarde/restauration de la base de données) afin de réellement libérer l’espace disque occupé par ces données.

[1] Si, donc, vous avez mis tous les $delais à zéro, ou si votre site n’est pas visité (site de test), l’indexation n’aura pas lieu.

Comment fonctionne le moteur de recherche de SPIP ?

Préambule : Installer les binaires pour l’indexations (ppthtml, catdoc et xppdf-utils (Voir le chapitre - XX.7)

Le moteur de recherche intégré à SPIP est très simple d’utilisation, et cependant relativement puissant. Même si la plupart des utilisateurs n’ont aucune raison de se demander « comment ça marche ? », nombreux sont les courriers qui demandent des précisions sur son fonctionnement...

Voici les principes sur lesquelles reposes le moteur de SPIP.

Ajouter un type de document

Des liens qui ouvrent une nouvelle fenêtre

Je suis chez Free ou chez Online, et j’obtiens souvent des messages « Maximum execution time exceeded »

Pourquoi la création automatique de vignettes ne fonctionne pas avec tous les formats d’images (JPEG, GIF, PNG) ?

Comment fonctionne le moteur de recherche de SPIP ?

Est-ce qu’il faut réinstaller une sauvegarde de la base de données après avoir fait une mise à jour de SPIP ?

Je viens d’effectuer une mise à jour de SPIP, et le site public fonctionne mal

Après modification de mes squelettes avec Dreamweaver (Macromedia), j’obtiens des messages d’erreur quand je les installe sur le serveur.

Le serveur qui m’héberge tourne sous PHP4, et ne comprend pas les fichiers « .php3 »

J’obtiens des messages du genre « Maximum execution time exceeded »

Dès ma première connexion à l’espace privé de SPIP, rien ne fonctionne et on m’indique une erreur à la ligne 1 de certains fichiers.

SPIP ne fonctionne pas chez mon hébergeur habituel. Y a-t-il un « patch » quelque part ? Afin d’être rapide et efficace (c’est-à-dire pour qu’il donne des réponses pertinentes), le moteur de SPIP utilise un système d’indexation des contenus. L’indexation consiste à analyser tous les textes contenus dans SPIP, à en extraire tous les mots, et à sauvegarder pour chaque mot l’endroit où il apparaît.

Comme l’index dans un livre vous présente les mots importants du livre, suivis des numéros des pages où les retrouver, l’index du moteur de recherche fait correspondre à chaque mot utilisé sur le site le numéro de l’article, de la brève... où le retrouver.

Ensuite, lorsqu’on utilise le moteur pour effectuer une recherche, SPIP n’a plus besoin de consulter l’ensemble des textes du site, mais simplement d’aller consulter l’index pour savoir où se trouvent ces mots. On gagne ainsi énormément de temps (et plus le site est gros, plus on gagne de temps).

L’indexation

Le principe est donc le suivant : prendre un texte (plus ou moins long), en extraire tous les mots, et noter chacun de ces mots dans une base de données, en faisant correspondre ce mot à l’endroit où il se trouve.

Par exemple, notre site a trois articles, dont les textes (très courts) sont :

article 1 : « Le petit chat est mort de froid et de faim. »

article 2 : « Le gros chat est rentré à la maison. »

article 3 : « La maison résiste au froid. »

Nous allons extraire les mots de chaque article, et enregistrer pour chaque mot à quel article il correspond (nous ne prendrons que les mots de plus de trois lettres, nous expliquerons plus loin pourquoi) :

petit : 1

chat : 1, 2

mort : 1

froid : 1, 3

faim : 1

gros : 1

rentré : 2

maison : 2, 3

résiste : 3

Et ainsi de suite, en considérant que notre site est certainement beaucoup plus gros, et les articles beaucoup plus long.

Si l’on recherche le mot chat :

une solution sans indexation consisterait à relire tous les articles, pour y trouver le mot chat ; sur un gros site, même pour un ordinateur, cela prend beaucoup de temps ;

puisque nous avons un index, il suffit de consulter l’entrée chat : on sait immédiatement qu’il se trouve dans les articles 1 et 2.

La pondération

À l’indexation s’ajoute un deuxième principe : la pondération. Il s’agit d’essayer de rendre le moteur plus pertinent. Par exemple, si un mot apparaît dans le titre d’un article, et dans le corps du texte d’un autre article, on considère que si l’on recherche ce mot, il faut en premier indiquer celui où il apparaît dans le titre. De plus, si un mot apparaît 25 fois dans un article, et seulement deux fois dans un autre, on veut afficher en premier l’article où le mot est le plus fréquent.

On voit que l’indexation simple ne suffit pas. Si on recherche chat, on trouvera les articles où il apparaît, mais sans pouvoir ensuite classer ces articles entre eux (selon que le mot chat apparaît une fois ou 20 fois, ou s’il se trouve dans le titre ou seulement dans le texte...).

SPIP va donc calculer une pondération pour chaque mot dans chaque article. C’est-à-dire donner des points à ce mot en fonction de l’endroit où il se trouve, et du nombre de fois où il apparaît :

dans le titre 8 points

dans le soustitre 5 points

dans le surtitre 5 points

dans le descriptif 4 points

dans le chapo 3 points

dans le texte 1 point

dans le post-scriptum 1 point

Si le mot apparaît plusieurs fois, on additionne les occurences.

Par exemple, si dans un article, le mot chat apparaît :

une fois dans le titre : 8 points

deux fois dans le descriptif : 2 fois 4 = 8 points

six fois dans le texte : 6 fois 1 = 6 points

total : 8 + 8 + 6 = 22 points.

Le mot chat, dans l’index, est donc ainsi enregistré :

chat, dans l’article numéro X, 22 points ;

chat, dans l’article numéro Y, 15 points ;

...

Si l’on recherche le mot chat, grâce à l’index, on saura donc qu’il se trouve dans les articles X et Y, et de plus on peut classer ces articles entre eux : 22 points dans X, 15 points dans Y, donc on considère que l’article X répond mieux à la recherche.

Les mots-clés : beaucoup d’utilisateurs confondent les mots-clés et l’indexation. Les mots-clés n’ont, par nature, aucun rapport avec l’indexation : quand SPIP effectue une recherche, il ne recherche pas dans les mots-clés associés à des articles (ce serait très limité), il recherche dans l’index qu’il a fabriqué à partir du texte exact des articles. Donc, dans le principe même de l’indexation, les mots-clés n’interviennent pas du tout.

En revanche, les mots-clés sont tout de même utilisés pour fabriquer la pondération des articles. Si un mot-clé est associé à un article, il entre alors dans l’indexation de l’article lui-même, avec une forte pondération (12 points pour le nom du mot-clé, 3 points pour son descriptif). Ainsi, si notre article Y (15 points en prenant simplement compte son contenu propre) est associé au mot-clé chat (parce qu’on indique par ce mot que c’est le sujet de cet article), il faut ajouter à l’indexation de cet article, pour le mot chat, les 12 points du mot-clé : total 27 points. Dans notre recherche sur chat, l’article Y devance désormais l’article X.

Notons enfin que tous les éléments de contenu de SPIP font ainsi l’objet d’une indexation : les articles, les brèves, les rubriques, les auteur, les mots-clés, les sites référencés (si le site est une syndication, les titres des articles récupérés sur ce site entrent également dans l’indexation).

Où est-ce stocké ?

Les données de l’indexation sont directement stockées dans la base de données. Cette partie est un peu technique, aussi je ne m’étendrai pas longtemps sur le sujet.

Sachez simplement qu’il y a plusieurs index (listes des mots), correspondant chacun à un type de contenu (un index pour les articles, un index pour les rubriques, un index pour les brèves...). De plus, contrairement à l’explication ci-dessus, où les entrées de l’index sont des mots, dans SPIP les entrées des index sont des nombres calculés à partir de ces mots (des hachages) ; une autre table de la base de données stockant par ailleurs les correspondance entre les véritables mots et ces nombres ; cette méthode permet d’accélérer les recherches dans les index (il est plus rapide pour le logiciel de rechercher des nombres plutôt que des mots).

Notez surtout que la taille des index est très importante. Sur uZine, par exemple, la partie de la base de données consacrée au stockage des articles pèse 9,7 Mo. La partie qui stocke l’index correspond aux articles pèse 10,5 Mo. Et la partie qui stocke la correspondance entre les mots et leur traduction en nombres 4,1 Mo. Ainsi, pour un site dont les articles occupent 9,7 Mo, l’indexation de ces articles représente, à elle seule, près de 14,6 Mo. L’espace nécessaire à ces articles et à la recherche a donc plus que doublé la taille occupée par le site. C’est l’une des raisons, notamment, pour lesquelles on peut préférer désactiver le moteur de recherche, si l’on a d’importantes limitations en matière d’hébergement.

Quels mots sont indexés ?

Nous l’avons vu, tous les mots de tous les éléments de contenu du site sont extraits, puis analysés (pour pondération). Cependant, SPIP ne va pas retenir tous les mots.

Les codes HTML sont exclus de l’indexation. Cela est évidemment nécessaire pour obtenir des recherches « propres »...

Les mots de moins de 4 lettres ne sont pas retenus (en réalité, de moins de 3 lettres, mais les mots de 3 lettres ne sont pour l’instant pas exploités réellement lors des recherches). Ce point soulève beaucoup de questions de la part des utilisateurs...

Le problème est d’obtenir des résultats aussi pertinents que possible. Il faut donc privilégier, dans les recherches, les mots réellement importants dans le sens de la recherche. Par exemple, si l’on recherche les mots le chat, le mot important est chat, et non le...

Reprenons notre premier exemple (avec trois articles constitués chacun d’un phrase). Si l’on avait indexé tous les mots, nous aurions notamment les mots :

le : 1, 2

est : 1, 2

...

En recherchant les mot le froid est dangereux, nous trouverions les entrées :

le : 1, 2

froid : 1,3

est : 1, 2

dangereux : nulle part.

En ajoutant les résultats de ces mots pour chaque article (en réalité, la pondération de chaque article, mais considérons pour notre exemple que chaque mot a une pondération d’un seul point), on obtiendrait :

article 1 : 3 mots

article 2 : 2 mots

article 3 : 1 mot.

Le classement mettrait donc en tête l’article 1, puis l’article 2, puis l’article 3. Or, l’article 2 ne parle pas de froid, contrairement à l’article 3. À cause de l’utilisation des mots sans importance pour le sens (le, est), le classement est faussé.

D’où le besoin, dans l’indexation, de ne pas tenir compte des mots qui n’entrent pas dans le sens de la recherche. La méthode la plus propre consiste à fournir au système une liste de mots à ne pas indexer ; cependant, cela nécessite un travail énorme, c’est-à-dire la constitution de dictionnaires d’exclusion (et cela dans toutes les langues)... Donc, plus simplement, dans SPIP nous choisissons de considérer que les mots de trois lettres et moins ne sont pas « importants » ; évidemment, il y a de la casse, puisque des mots comme Val, mer, sud... ne sont plus pris en compte ; c’est donc un compromis, qui se juge sur l’efficacité des recherches (qui sont globalement de bonne qualité).

 Depuis la version 1.6 de SPIP, les sigles de deux lettres et plus, y compris ceux contenant des chiffres (G8, CNT, PHP, ONU...), sont indexés. Un sigle est un mot ne comprenant aucune minuscule.

Quand a lieu l’indexation ?

L’indexation a lieu à trois moments différents :

Lorsque vous validez un article, celui-ci est immédiatement indexé ;

Lorsque vous modifiez un article déjà publié, il est à nouveau indexé ;

Lors de la visite du site public, si un élément accessible au public n’est pas indexé (par exemple, lorsque vous venez d’effacer les données d’indexation depuis l’espace privé, ou lorsque vous venez de rétablir une sauvegarde de votre site - les index ne sont pas sauvegardés -, ou si vous avez activé le moteur de recherche après avoir déjà publié des articles), alors il est indexé (en tâche de fond).

Retenez que l’opération d’indexation est relativement lourde : elle demande de nombreux calculs (calculs peu complexes, mais effectués sur tous les mots de l’article), et provoque de très nombreux appels à la base de données. Là aussi, chez un hébergeur très lent (vraiment très lent !), il peut être préférable de désactiver le moteur de recherche.

Retenez également que, si vous activez le moteur après avoir déjà publié des articles, ceux-ci ne sont pas immédiatement indexés : ce seront les visites sur le site public qui provoqueront leur indexation. Sur un gros site, cela peut prendre un certain temps.

La recherche

Puisque tous les documents sont indexés, on peut désormais effectuer des recherches.

Si vous recherchez un seul mot...

SPIP va consulter l’index, et trouver l’entrée correspond à ce mot. Pour le mot chat, nous avions trouvé les articles X et Y. SPIP va de plus récupérer le nombre de points attribués à ce mot pour chaque article (22 points dans X, et 27 points pour Y). On peut donc classer nos résultats : l’article Y, puis l’article X.

Si vous recherchez plusieurs mots...

SPIP n’autorise pas les constructions du type « ET », « OU », il ne fonctionne pas de cette manière.

Lorsque vous recherches plusieurs mots, SPIP va effectuer l’opération de recherche pour chaque mot, récupérer les points de chaque article (ou brève, ou rubrique, etc.), et ajouter ces points.

Recherchons par exemple les mots chat, gros, maison. On obtient les résultats suivants pour chaque mot :

chat : article X (22 points), article Y (27 points),

gros : article X (12 points), article Y (2 points), article Z (5 points),

maison : article Y (3 points), article Z (17 points).

SPIP fait l’addition de tous ces points pour chaque article :

article X : 22 + 12 = 34 points,

article Y : 27 + 2 + 3 = 32 points,

article Z : 5 + 17 = 22 points.

Le classement des articles, pour la recherche chat, gros, maison, est : article X, puis article Y, puis article Z. (Dans les squelettes, on peut d’ailleurs demander l’affichage des points de chaque résultat grâce à la balise #POINTS.)

Ça n’est donc pas une recherche de type « ET » ni « OU », c’est une addition de points. Et à l’usage, cela se montre plutôt efficace (on trouve ce que l’on cherche, ce qui est bien le but d’un moteur...).

Mise en pratique de la recherche dans SPIP

Préambule : Installer les binaires pour l’indexations (ppthtml, catdoc et xppdf-utils (Voir le chapitre - XX.7)

SPIP indexe désormais les documents ; il le fait de la manière la plus simple qui soit pour la plupart des documents, en indexant son titre, son descriptif, son nom de fichier.

La boucle (DOCUMENTS) s'enrichit donc d'un critère {recherche} qui fonctionne de manière classique.

Pour certains documents et sur certaines installations système, le moteur d'indexation est également capable d'aller lire le contenu des documents pour en "extraire" les données texte.

Les fichiers "texte" les plus courants (txt, c, css, pas...) sont extraits sur toutes les plateformes, ainsi que les fichiers html. Si votre installation de php a accès aux scripts suivants en ligne de commande, le contenu des fichiers pdf, rtf, doc peut aussi être indexé :

extension | script (binaire) nécessaire (un parmi...)

* pdf | metamail, pdftotext

* rtf | metamail, wvText, unrtf, catdoc

* doc | metamail, wvText, antiword, catdoc

à noter :

- metamail n'est pas vraiment un binaire qui fait quoi que ce soit, c'est juste un "wrapper" (enrobage??) qui est censé savoir quel script appeler pour extraire tel ou tel type de fichier.

- il est possible d'ajouter des extracteurs en suivant les modèles donnés pour doc, rtf et pdf (et il y en a d'autres à importer depuis le projet "spip-modules", qui a été très utile pour ce travail) ; on attend vos contribs !

- il est aussi certainement possible d'améliorer les extracteurs installés initialement, notamment de manière à ce qu'ils soient capables de savoir "par eux-mêmes" quelle est leur meilleure chance de réussite (plutôt que d'essayer plein d'appels systèmes au hasard), et dans certains cas pour que tout le traitement se fasse en php (il y a eu des discussions là-dessus sur le lab mais je n'ai pas retrouvé des fichiers fonctionnels).

- pour reindexer un document (quand on fait des tests d'extraction), le plus simple est de modifier son titre ou son descriptif

- ecrire/admin_index.php3 reflète cette nouvelle table d'indexation

- ecrire/data/spip.log contient des messages d'erreur un peu informatifs en cas d'échec de l'extraction

- dernier point, qui peut avoir son importance, les documents "distants" référencés sur internet ne sont indexés qu'à partir du moment où une copie_locale() est disponible. Le moteur d'indexation ne va pas les chercher d'autorité pour les indexer.

Adresses des binaires externes :

# wvText

# http://wvware.sourceforge.net/

# antiword

# http://www.winfield.demon.nl/

# catdoc

# http://www.45.free.net/~vitus/ice/catdoc/

# unrtf

# http://www.gnu.org/software/unrtf/unrtf.html

# pdftotext

# http://www.glyphandcog.com/Xpdf.html

Préambule : Installer les binaires pour l’indexations avec Linux DEBIAN (ppthtml, catdoc et xppdf-utils (Voir le chapitre - XX.7)

Mise en pratique

Vérifier le contenu de l’indexation

http://mon-site-web/ecrire/admin_index.php3

Figure 4 : Résultat d'indexation avant l'incorporation de document

Insérer un article dans SPIP

Figure 5 : Résultat d'indexation après l'incorporation de document

Nous pouvons voir que SPIP indexe les articles et les rubriques

Incorporation d’une pièce jointe (Document Word)

Vérifier dans la page suivante que le moteur de recherche est activé http://mon-site-web/ecrire/config-fonctions.php3

Figure 6 : Résultat d'indexation après l'incorporation d'une pièce jointe

Installer imagick :

Pour SPIP – Pour la création de vignettes

apt-get install php4-imagick

Souhaitez-vous continuer – Saisir « O » et appuyer sur la touche « Entrée »

Redémarrer apache pour prendre les changements en compte

/etc/init.d/apache restart

/etc/init.d/apache-ssl restart

Vérifier que l’installation de ImageMagick soit prise en compte pour SPIP

Ouvrir l’interface d’administration de SPIP – http://mon_site_wzb/ecrire

S’identifier en utilisant un compte Administrateur

Vérifier que vous êtes en « Interface Complète »

Clic sur le bouton « Configuration »

Clic sur le bouton « Interface avancées »

Un jolie pied doit apparaître…. Au dessus de Imagick

Pour Coppermine (Logiciel de gestion d’une Photothèque)

Installation classique Debian

Apt-get install imagemagick

Cette simple procédure doit permettre l’installation d’ImageMagick. Sinon voir le chapitre suivant (Installation sur une plate forme Unix)

Installation sur une plate forme Unix

Préambule

Installer les modules suivants pour la compilation d’ImageMagick

Apt-get install gcc

Apt-get install g++

Apt-get update

Apt-get upgrade

Installation et compilationd’ImageMagick

Copier le fichier dans le fichier Imagick.tar.gz dans le dossier /install/

Décompresser le fichier

Gunzip –c Imagick.tar.gz | tar xvf –

Configure

Se positionner dans le dossier ImageMagick

Cd ImageMagick-6. ?. ?

./configure

make

Installation

Make install

Vérifier l’installation

/usr/local/bin/convert logo : logo.gif

Installation de Coppermine

Préambule - Configurer php.ini

Modifier le fichier php.ini dans le dossier /etc/php4/apache

Mettre safe_mode=off

Relancer Apache

/etc/init.d/apache restart

Création de la base de données dans Alternc

Nous créons la base de données pour l’hébergement de Coppermine (Voir le chapitre création d’une base de données avec Alternc)

Installation

Télécharger la version sur : http://coppermine-gallery.net/index.php

Ou http://sourceforge.net/project/showfiles.php?group_id=89658

Installer les sources sur le serveur ftp de votre site

Ouvrir le navigateur de votre choix et accéder au site.
( http://mon_site_web/mon_dossier_coppermine )

Attendre quelques secondes…

Saisir dans la partie installation les éléments demandés.

Cliquer sur le lien « Login »

Saisir les éléments d’authentification.

Cliquer sur le lien « Config »

Choisir la langue « Française »

Choisir le thème par défaut « Fruity »

Cliquer sur le lien de sauvegarde des modifications des paramètrages.

Paramétrage de Coppermine – Quelques astuces

Ici nous avons la possibilités de modifier l’affichage de Coppermine avec les deux éléments suivants :

Modifier la configuration en supprimant les deux variables suivantes :

Random,2 sert à afficher des images aléatoires

Lastup,2 sert à afficher les dernières images ajoutées dans l’album

Haut du formulaire Le contenu de la page principale	breadcrumb/catlist/alblist

Modifier la configuration en nommant les champs suivants :

Haut du formulaire Champs libres pour les descriptions d'images (à laisser tel quel si vous n'utilisez pas cette fonction)
Nom du champ 1	Date de prise de vue
Nom du champ 2	Lieu de la prise de vue
Nom du champ 3	Nom des personnes photographiés et coordonnées
Nom du champ 4	Autorisation de reproduction

Installer Samba :

apt-get install samba

Souhaitez-vous continuer – Saisir « Oui »

groupe de travail et nom de domaine : taper « Votre_nom_de_domaine_samba »

Voulez vous chiffrer les mots de passe ? choisir « oui » puis taper entrée

Modifier smb.conf pour utiliser les paramètres wins fournis par DHCP ? Choisir « non » puis taper entrée

comment voulez vous lancer Samba ? choisir « démons » puis taper sur entrée

Faut-il créer une base de données /var/lib/samba/passdb.tdb ? choisir « non » puis taper entrée

Installer un utilisateur Samba

Créer l’utilisateur « nom_de_utilisateur_samba » (sous debian différent de l’utilisateur intranet de alternc)

useradd « nom_de_utilisateur_samba »

lui définir un mot de passe spécifique à samba

smbpasswd –a « nom_de_utilisateur_samba »

new SMB password : « mettre le mot de passe »

retype new SMB password : retaper le nouveau mot de passe

Configuration de /etc/samba/smb.conf

À la fin du fichier, il faut configurer le dossier à partager (ex : GEIDE)

Ajouter les lignes qui suivent afin d’ajouter le fichier partagé :

La partie entre [ ] correspond au nom du répertoire partagé

path correspond a son chemin sur la machine

browseable indique si ce répertoire peut être parcouru ou non

writeable indique si ce répertoire peut être modifié ou non

valid users utilisateurs autorisés

admin users administrateurs du répertoire partagé

la commande testparm va vous permettre de vérifier que la configuration est correcte, si elle l’est vous devriez obtenir un écran de ce style :

Démarrage du serveur :

/etc/init.d/samba restart

Installer MNGOSEARCH

L’installation des binaires complémentaires comme ppthtml, catoc et xpdf-utils peuvent se faire de manière indépendante pour SPIP version 1.8d. De se fait l’installation et le paramétrage de MnoGoSearch devient inutile.

Pré-requis pour l’installation de MnoGoSearch

Installation de make pour compiler

Installation de la librairie G++

Installation de la librairie zlib-bin

Installation de la librairie zlib1

Installation de la librairie libmysqlclient10-dev

Installation de la librairie xpdf-utils

Installation de la librairie catdoc

Installation de la librairie ppthtml

Créer l’utilisateur mnogosearch dans AlternC

Installation de la librairie zlib-bin

Installer make

Apt-get install make

Apt-get update

Apt-get upgrade

Installer g++

g++ a comme dépendances gcc et libc6-dev. Il ne sera donc pas utile d’installer séparément gcc et libc6-dev.

Apt-get install g++

Apt-get update

Apt-get upgrade

Installer zlib-bin

Apt-get install zlib-bin

Apt-get update

Apt-get upgrade

Installer zlib1

Apt-get install zlib1

Apt-get update

Apt-get upgrade

Installer libmysqlclient10-dev (Connexion à MySQL)

Apt-get install libmysqlclient10-dev

Apt-get update

Apt-get upgrade

Vérifier la présence de mysql.h dans le répertoire

Usr/include/mysql

Installer xpdf-utils – 3.00-13 (Lire les fichiers PDF)

L’installation de xpdf-utils est obligatoire pour SPIP 1.8d et version suivante.

Vérifier la présence de xpdf sur le serveur

Ouvrir une console MC

Se positionner sur la racine du disque

Touche de fonction F9

Se déplacer sur le menu « Commande »

Se déplacer sur le menu « Find File »

Rechercher « xpdf» dans la zone « Nom du fichier »

Par défaut « xpdf » n’est pas installé

Apt-get install xpdf-utils

Choisir « O » et appuyer sur la touche « Entrée »

Format de papier du système – Choisir A4

Apt-get update

Apt-get upgrade

La recherche de « xpdf » permet de visualiser l’ajout dans les dossiers suivants :

Installer catdoc – 0.93.4-2 (Lire les fichiers Word)

L’installation de catdoc est obligatoire pour SPIP 1.8d et version suivante.

Il est nécessaire pour parcourir les fichiers word

Vérifier la présence de « catdoc » sur le serveur

Ouvrir une console MC

Se positionner sur la racine du disque

Touche de fonction F9

Se déplacer sur le menu « Commande »

Se déplacer sur le menu « Find File »

Rechercher « catdoc » dans la zone « Nom du fichier »

Par défaut « catdoc » n’est pas installé

Apt-get install catdoc

Apt-get update

Apt-get upgrade

La recherche de « catdoc » permet de visualiser l’ajout dans les dossiers suivants :

Installer ppthtml – 0.5.1-2 (Lire les fichiers PowerPoint)

L’installation de ppthtml est obligatoire pour SPIP 1.8d et version suivante.

Il est nécessaire afin de parcourir les fichiers PowerPoint

Vérifier la présence de « pphtml » sur le serveur

Ouvrir une console MC

Se positionner sur la racine du disque

Touche de fonction F9

Se déplacer sur le menu « Commande »

Se déplacer sur le menu « Find File »

Rechercher « pphtml » dans la zone « Nom du fichier »

Par défaut « pphtml » n’est pas installé

Apt-get install ppthtml

Apt-get update

Apt-get upgrade

La recherche de « catdoc » permet de visualiser l’ajout dans les dossiers suivants :

Créer l’utilisateur mnogosearch dans AlternC

Se connecter a l’administration de alternc

Créer un membre mnogosearch

Se connecter sous ce nouveau login

Lui créer une base de données

Modification des droits pour l’utilisateur mnogosearch

Sous phpmyadmin, modifier les droits de l'utilisateur mnogosearch (le possesseur de la base de données du moteur) lui donner les droits nécessaires a la réalisation du script indexer.conf (c’est le script de mnogosearch qui parcourt la machine pour indexer les fichiers).

Chercher le mot de passe de l’admin ainsi que son login en regardant dans le fichier alternc.conf dans la partie configuration de mysql. Ce fichier est généralement situé dans /etc/alternc/

Lancer le navigateur et se rendre à l’adresse : https://ns0.ca15.org/admin/sql/index.php

Rentrer le nom d’utilisateur et le mot de passe stockés dans alternc.conf

Dans le menu MySQL de phpmyadmin choisir l’option privilèges :

Dans la vue d’ensemble des utilisateurs cliquez sur l’icône qui représente un crayon dans le tableau à la ligne de l’utilisateur mnogosearch

Cliquer sur le bouton Tout cocher

Décocher la ligne Grant

Cliquer sur le bouton Exécuter

Installer mnogosearch

Télécharger les sources compressées en tar.gz sur ce site : http://www.mnogosearch.org/

Les uploader sur le ftp avec leech ftp

Déplacer ces sources dans le répertoire /install

Ouvrir le fichier tar -zxf mngosearch-3.2.32.tar.gz a l’aide de l’utilitaire midnight commander puis copier son contenu dans le répertoire de votre choix

moi j’ai choisi /install

Sortez de MC

Taper dans l’invite de commande : cd /install/mnogosearch-3.2.32/

Puis: perl install.pl

please set installation path - Appuyer sur la touche entrée

change layout ? - Appuyer sur la touche entrée

try to autodetect databases at known locations ? yes - Appuyer sur la touche entrée

mysql server found

which ODBC-style database support to include ?- entree

which database support to include ? entree

include MySQL support ? yes - Appuyer sur la touche entrée

Enter MySQL base install directory - Appuyer sur la touche entrée

include postgresql - Appuyer sur la touche entrée

include msql support ? - Appuyer sur la touche entrée

include interbase support ? - Appuyer sur la touche entrée

include oracle7 support ? - Appuyer sur la touche entrée

include oracle8 support ? - Appuyer sur la touche entrée

include oracle8i support ? - Appuyer sur la touche entrée

include Ct-Lib support ? - Appuyer sur la touche entrée

include FreeTDS Ct-Lib support ? - Appuyer sur la touche entrée

build shared libraries yes - Appuyer sur la touche entrée

build static libraries ? - Appuyer sur la touche entrée

use syslog(yes) or stdout/stderr(no) ? - Appuyer sur la touche entrée

syslog facility ( valid name from /usr/include/sys/syslog.h)[default] : - Appuyer sur la touche entrée

enable file :/ URL scheme support ?(yes/no)[yes] : - Appuyer sur la touche entrée

enable http :// URL scheme support ?(yes/no)[yes] : - Appuyer sur la touche entrée

enable ftp:// URL scheme support ?(yes/no)[yes] : - Appuyer sur la touche entrée

enable htdb :/ URL scheme support ?(yes/no)[yes] : - Appuyer sur la touche entrée

enable news :// URL schema support ?(yes/no)[yes] : - Appuyer sur la touche entrée

enable posix pthreads ? - Appuyer sur la touche entrée

enable external parser support ? - Appuyer sur la touche entrée

enable MP3 tags support ? - Appuyer sur la touche entrée

enable HTTP Content-Encoding(zlib) support ? no - Appuyer sur la touche entrée

Enable DMALLOC support ? - Appuyer sur la touche entrée

Enable OpenSSL support ? - Appuyer sur la touche entrée

Faire : Make && make install

Créer le fichier indexer.conf et positionner la variable

Ouvrez le répertoire /etc dans le répertoire d’installation de Mnogosearch, ce répertoire est généralement /usr/local/mnogosearch/etc.

Créer le fichier indexer.conf en copiant le fichier indexer.conf-dist :

Taper - cp indexer.conf-dist indexer.conf

Ouvrir le fichier indexer.conf avec l’utilitaire MC afin de modifier les variables suivantes : Ajouter les lignes suivantes (aux alentours de la ligne 55)

DBAddr mysql://alternc:passworddealternc@localhost/mnogosearch/ ?dbmode=single

Server http://www.ca15.org/

Server http://www.ca15.org/IMG (Le dossier IMG stocke l’ensemble des fichiers joints de SPIP)

Supprimer l’extention .doc .pdf(ou toute autre extension de fichier que vous souhaitez indexer) - aux alentours de la ligne 320.

Dissalow *.xls, *.doc … (Vous pouvez mettre un # pour les mettre en commentaires)

Ensuite aux alentour de la ligne 530 supprimer les commentaires devant les ligne permettant d’activer les types mime correspondant aux fichiers que vous souhaitez indexer.

Pour le type Mime correspondant aux fichiers Powerpoint il faut ajouter la ligne suivante :

Mime application/vnd.ms-powerpoint “text/plain ; charset=utf-8“ “ppthtml $1“

Création des tables :

Se placer dans le répertoire sbin propre à l’installation de mnogosearch, généralement /usr/local/mnogosearch/sbin, et créer les tables :

Taper ./indexer -Ecreate

Lancer l’indexer

/usr/local/mnogosearch/sbin/indexer /usr/local/mnogosearch/etc/indexer.conf

Installer les scripts de recherche

Copier search.cgi dans le répertoire cgi-gin de votre serveur web(sur alternc ce répertoire est généralement à l’emplacement : /var/alternc/cgi-bin) ou créez un alias apache vers le répertoire bin de mnogosearch.

Tapez cd /usr/local/mnogosearch/etc

Renommez le fichier search.htm-dist en search.htm

Cp search.htm-dist search.htm

Après testez le bon fonctionnement du moteur en tapant dans votre navigateur : http://www.ca15.org/cgi-bin/search.cgi

Repertoire cgi-bin (Perl, ...) independant pour chaque domaine

Par défaut, /cgi-bin/ pointe sur /var/alternc/cgi-bin/ qui est inaccessible aux hebergés par FTP. Voici la procédure pour que chaque domaine ait son propre repertoire cgi-bin accessible par FTP.

Editer /etc/apache/httpd.conf

Supprimer la ligne - ScriptAlias /cgi-bin/ /var/alternc/cgi-bin/

Ajouter la ligne : VirtualScriptAlias /var/alternc/dns/%-2.1/%0/cgi-bin en dessous de la ligne commencant par "VirtualDocumentRoot ..."

Editer /etc/proftpd.conf

Remplacer

?DenyAll

par

?AllowAll

dans la section SITE_CHMOD à la fin du fichier.

Relancer les services

/etc/init.d/proftpd restart

/etc/init.d/apache restart

Créez un repertoire "cgi-bin" pour chaque domaine (via l'administration ou par ftp)

Annexe

Procédure pour l’installation de SPIP AGORA

Installation de PEAR pour l’installation de SPIP AGORA :

PEAR est nécessaire au bon fonctionnement de SPIP-AGORA voici donc la procédure pour l’installer :

apt-get install php4-pear

apt-get update

apt-get upgrade

Cela installera les bibliothèques les plus courantes de PEAR.

Ensuite pour ajouter les bibliothèques manquantes de façon simple :

lynx -source http://pear.php.net/go-pear | php -q

entrée

entrée

entrée

y puis entrée

A ce stade, pour installer les modules PEAR nécessaires à SPIP-AGORA il suffit normalement de taper, en tant que root :

pear install Date

pear install DB

pear install Log

pear install DB_NestedSet-1.3.6

pear install Cache

pear install DB_ldap2-0.4

pear install Text_Diff-0.0.4

pear install Mail

pear install Mail_Mime

Installation de SPIP-AGORA :

Télécharger SPIP-AGORA à l’adresse suivante : http://www.agora.gouv.fr/

On reçoit un fichier zip, dans notre cas il s’agit de agora1.2.1.zip

Le décompresser dans un fichier

Envoyer tout les documents ainsi créés dans le répertoire agora 1.2.1 dans la racine du ftp intranet_site à l’aide d’un client ftp ici j’utilise leech ftp qui est un client gratuit.

Le site Agora est maintenant posé sur le serveur mais il n’est pas configuré.

Ouvrir un navigateur à cette adresse : http://www.ca15.org

On devrait voir :

Maintenant taper l’adresse :http://www.ca15.org/ecrire

On arrive la première page de configuration du site

La langue proposée par défaut est le francais donc pas besoin de modifier, cliquer sur suivant

Sélection de la langue :

Si les packages PEAR ont été bien installés on devrait arriver à la page connexion à la base de données, si ce n’est pas le cas je vous invite à revoir l’étape installation de PEAR vu précédemment.

Configuration de la base de données :

Voici les informations de configuration pour cette étape :

Type de la base de données à utiliser - mysql

Nom de l’instance de la base de données à utiliser : intranet_agora

adresse de la base de données : localhost

login de connexion - intranet

Mot de passe de connexion - mot de passe de la base de données

préfixe des tables :

spip

préfixe des cookies

spip

Remplissez tout les champs et cliquez sur suivant :

Si votre base est configurée correctement on devrait obtenir un message de ce type :

Si ce n’est pas le cas vérifier la configuration de la base de donnée sur alternc pour vérifier que les données de configuration correspondent bien à celles insérées dans la page précédente de l’installation.

Création de l’accès personnalisé :

Fin de l’installation :

Problème de memory size :

Il est possible au moment du lancement de spip-agora que l’on ait un message d’erreur de ce type :

Cela est dû au fait que PHP dispose d'un mécanisme permettant de se prémunir des scripts susceptibles d'engendrer une consommation mémoire trop importante pouvant saturer un serveur. Par défaut, une limite est fixée à environ 8 Mo (8388608 octets). C'est la configuration par défaut d'easyphp.

Pour résoudre ce problème il faut :

1ere solution :

Ouvrir le fichier php.ini situé dans /etc/php4/apache/php.ini

Rechercher la variable memory_limit

Normalement elle est initialisée à 8M

Augmenter sa valeur pour permettre à agora de fonctionner.

Perso je l’ai mis à 15M

Quelques petits outils bien pratiques pour agrémenter SPIP

Utiliser les contributions pour SPIP :

SPIP étant un logiciel, de nombreux développeurs apportent des contributions afin d’améliorer son fonctionnement vous pourrez les trouver à cette adresse : http://www.spip-contrib.net/

A vous de choisir les contributions qui correspondent le mieux à votre cas pour ma part je vais vous indiquer la méthode pour installer un éditeur WYSIWYG(What You See Is What You Get ) à l’éditeur d’articles de SPIP.

L’éditeur WYSIWYG HTMLAREA 3.0 sous SPIP :

Vous pourrez trouver un article a propos de cette contribution à cette adresse : http://www.spip-contrib.net/Utiliser-l-editeur-WYSIWYG

Tout d’abord télécharger cette archive zip : http://www.spip-contrib.net/IMG/zip/spip_wysiwyg-2.zip

Copier le répertoire htmlarea dans la racine du site spip à l’aide de votre client ftp.

Remplacer le fichier :

- ecrire/breves_edit.php3

par le fichier contenu dans l’archive

Ensuite il faut ouvrir le fichier : ecrire/articles_edit.php3

Remplacer les lignes 465 à 470 :

$textes_supplement .= "<BR>";
$textes_supplement .= afficher_barre('document.formulaire.texte'.$nombre_textes);
$textes_supplement .= "<TEXTAREA NAME='texte$nombre_textes'".
" CLASS='formo' ".$GLOBALS['browser_caret']." ROWS='$rows' COLS='40' wrap=soft>" .
$texte1 . "</TEXTAREA><P>\n";
par les lignes suivantes :

// Modifs Aurélien PIERARD
$textes_supplement .= "<p align=\"center\"><input type=\"button\" onClick=\"window.open('../htmlarea/htmlarea.php3?idChamp=texte$nombre_textes','_blank','toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0, width=700, height=500');\" value=\"Utiliser l'&eacute;diteur WYSIWYG (popup)\" class=\"fondo\" style=\"font-size:14px; font-weight:bold;\"/></p>\n";
$textes_supplement .= afficher_barre('formulaire', 'texte'.$nombre_textes);
$textes_supplement .= "<TEXTAREA id='texte$nombre_textes' name='texte$nombre_textes'".
" CLASS='formo' ".afficher_claret()." ROWS='$rows' COLS='40' wrap=soft>" .
$texte1 . "</TEXTAREA><P>\n";
// Fin des Modifs Aurélien PIERARD

puis remplacer les lignes 482 a 485 :

echo afficher_barre('document.formulaire.texte');
echo "<TEXTAREA id='text_area' NAME='texte' ".$GLOBALS['browser_caret']." CLASS='formo' ROWS='$rows' COLS='40' wrap=soft>";
echo $texte;
echo "</TEXTAREA>\n";

et enfin aux alentours de la ligne 486 :

echo afficher_barre('formulaire', 'texte');
echo "<TEXTAREA id='texte' NAME='texte' ".afficher_claret()." CLASS='formo' ROWS='$rows' COLS='40' wrap=soft>";
echo $texte;
echo "</TEXTAREA>\n";

et remplacez par

echo afficher_barre('document.formulaire.texte');
echo "<TEXTAREA id='text_area' NAME='texte' ".$GLOBALS['browser_caret']." CLASS='formo' ROWS='$rows' COLS='40' wrap=soft>";
echo $texte;
echo "</TEXTAREA>\n";

'

Gestion des paquets DEBIAN

Introduction

L'installation, la mise à jour et la suppression des applications s'effectue en ligne aisément avec la commande apt-get.
Cette commande interroge les serveurs déclarés dans le fichier /etc/apt/sources.list et prend en charge directement le téléchargement et l'installation des dépendances, c'est-à-dire des programmes prérequis (indispensables au bon fonctionnement du logiciel).

Par contre, pour installer un paquet isolé absent d'une source il faut utiliser la commande dpkg

Si nécessaire, le désarchivage du paquet est suivie d'une phase d'interrogation interractive permettant de personnaliser la configuration, qui sera appliquée lors de l'installation proprement dite sur le disque.

Tous les paquets installés sur le système sont décrits dans /var/lib/apt/lists/ et /var/lib/dpkg/available/
Leur documentation se trouve dans /usr/share/doc/paquet/

debconf Debconf est une interface générale appelée lors de la configuration des paquets. Elle questionne l'utilisateur sur la configuration du paquet avant qu'il ne soit installé, en le guidant dans les choix tout en lui proposant une option raisonnable par défaut .

Intégrer une source CDROM

apt-cdrom add

less /etc/apt/sources.list

dpkg : installer et configurer un paquet

Utilité : indispensable pour installer un paquet isolé

Problème : attention dpkg ne gère pas les dépendances, il faut donc installer auparavant les paquets prérequis

Travaux Pratiques - Gestion des paquets

# installer 2 paquets

dpkg -i paquet1.deb paquet2.deb

# désinstaller un paquet sans supprimer ses fichiers de configuration

dpkg -r paquet.deb

# supprimer un paquet et sa configuration

dpkg --purge paquet.deb

# reconfigurer un paquet déjà installé :

dpkg-reconfigure apache

Travaux Pratiques - Obtenir des informations sur les paquets déjà installés

# pour controler l'affichage de la liste de tous les paquets

dpkg -l | less

# pour filtrer (les noms des paquets sont toujours en minuscules)

dpkg -l | grep gcc

# pour afficher la liste des fichiers du paquet

dpkg -L net-tools

# pour connaitre le paquet qui a installé une commande ou une application

whereis ifconfig --> /sbin/ifconfig

dpkg -S /sbin/ifconfig --> net-tools

# pour reconfigurer un paquet déjà installé

dpkg-reconfigure gpm

Utilitaires apt

apt = advanced packaging tools est une interface de système de gestion des paquets Debian, en ligne de commande
(voir http://www.debian.org/doc/manuals/apt-howto/)

Il existe maintenant des interfaces d'utilisation de apt plus conviviales :
- aptitude : mode texte plein écran, fortement recommandée
- synaptic : mode graphique, à installer si possible

Fonctionnement

Fichier des sources afin d'automatiser, on déclare et décrit de façon permanente les sources de paquets (cdrom, url ..) à télécharger, dans le fichier /etc/apt/sources.list
La syntaxe de chaque ligne est : deb <URL> <distribution> <sections>, où :

<URL> utilise un protocole file:// ou http:// ou ftp:// - <distribution> est stable ou testing ou unstable - <sections> est une liste de répertoire pris dans (main, contrib, non-free)

Travaux Pratiques - Exemple de configuration des sources de paquets /etc/apt/sources.list

deb http://ftp.fr.debian.org/debian/ stable main non-free contrib

deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free

# Mises a jour de securite

deb http://security.debian.org/ stable/updates main contrib non-free

Base de données des paquets Au tout début, il faut initialiser la base de données des paquets disponibles.
Pour construire cette base, la commande apt-get update interroge chacune des sources, conformément aux choix des sources présentes dans sources.list
Il faut remettre à jour cette base régulièrement afin de la synchroniser avec l'évolution des paquets sur les sites-sources

Mise à jour des paquets installés La commande apt-get upgrade permet la mise à jour sur le serveur de tous les paquets déjà installés qui ont fait l'objet d'une mise à jour sur le site, souvent pour réparer des bugs ou améliorer la sécurité. La sécurité des serveurs exige un "upgrade" régulier et à chaque publication de patch

Le cache de apt Tous les paquets installés ou désintallés se trouvent dans /var/cache/apt/archives/. On y trouve donc souvent des versions différentes des paquets qui ont bénéficié de mises à jour. La commande apt-get autoclean permet de supprimer tous les paquets obsolètes par rapport au site-miroir (et non à notre système, car notre système doit etre constamment à jour ;-)

Travaux Pratiques

# examen et signification du fichier-sources

less /etc/apt/sources.list

# mise à jour générale, bien observer

apt-get update

apt-get upgrade

# nettoyer le cache, seulement après une mise à jour complète

apt-get autoclean

Commandes

apt-get Pour maintenir les paquets

Commande	Action	Essais
apt-get install	Installer ou mettre à jour un paquet	apt-get install gcc
apt-get remove	Supprimer un paquet installé	apt-get remove gpm
apt-get update	Mise à jour de l'indexation des paquets à partir des sites sources	
apt-get upgrade	Mise à jour générale des dernières versions de tous les paquetages du système	

apt-cache Pour obtenir des informations au sujet d'un paquet installé

Commande	Action	Essais
apt-cache search	Donne la liste des paquets contenant un mot-clé	apt-cache search se3
apt-cache show	Donne donne une rapide description d'un paquet	apt-cache show mc
apt-cache showpkg	pour connaitre les dépendances d'un paquet	apt-cache showpkg se3

apt-file : Cet utilitaire permet d'interroger la liste des fichiers contenus dans tous les paquets, qu'ils soient installés ou non
L'installer par apt-get install apt-file
Puis construire la base gérée par apt-file : apt-file update

Commande	Action	Essais
apt-file list <paquet>	Donne la liste des fichiers contenus dans le paquet	apt-file list net-tools
apt-file search <fichier>	pour savoir à quel paquet appartient un fichier	apt-file search ipconfig

Travaux Pratiques

Examiner et comprendre le fichier /etc/apt/sources.list Voici ce qui est recommandé sur un serveur Sambaedu

# Source debian woody standard

deb http://ftp.fr.debian.org/debian/ stable main non-free contrib

deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free

# Mises a jour de securite

deb http://security.debian.org/ stable/updates main contrib non-free

# Source officielle SE3

deb ftp://193.49.66.139/debian woody se3

# Backports pour Debian Woody

deb http://www.backports.org/debian stable acl

deb http://www.backports.org/debian stable kernel-2.6

# Source debian woody standard

deb http://ftp.fr.debian.org/debian/ stable main non-free contrib

deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free

# Mises a jour de securite

deb http://security.debian.org/ stable/updates main contrib non-free

# Source officielle SE3

deb ftp://193.49.66.139/debian woody se3

# Backports pour Debian Woody

deb http://www.backports.org/debian stable acl

deb http://www.backports.org/debian stable kernel-2.6

Expliquer la syntaxe de ces directives en comparant avec l'organisation d'un ftp interrogé (par exemple : http://ftp.fr.debian.org/debian/dists/stable/) et en observant les traces de l'exécution de la commande apt-get update

Le paquet sysvinit Est-il installé ? A quoi sert-il ? Quelles commandes contient-il ?

Installer nslookup
La commande nslookup répond t-elle ? peut-on installer un paquet nommé nslookup ?
Comment connaitre le nom du paquet contenant cette commande ?
Installer ce paquet et effectuer quelques essais par exemple : nslookup www.ac-creteil.fr
Quelles autres commandes sont contenues dans ce paquet ?

Développement de Debian

Chaque site d'archives Debian possède la meme structure du répertoire. C'est ce qui permet de s'adresser et de télécharger les paquets sur l'un quelconque des sites Debian (officiel ou miroirs).

Pour plus de détail voir :
http://www.fr.debian.org/doc/manuals/reference/ch-system.fr.html

Voici la structure du répertoire debian

dists/ : répertoire des distributions stables ou non.

stable/, sous-répertoire qui contient les paquets de l'actuelle distribution stable Woody (3.0)

stable/main/ : paquets constituant la version la plus récente du système Debian.

stable/non-free/ : paquets dont la distribution est restreinte pou lesquelq il faut tenir compte de la licence particulière (par exemple : interdiction d'utilisation commerciale, freeware ..)

stable/contrib/ : paquets qui sont conformes aux principes du logiciel libre selon Debian et distribuables librement, mais dépendent d'un paquet qui n'est pas distribuable librement et n'est ainsi disponible que dans la section non-free.

testing distribution en test (Sarge)

unstable distribution en développement (Sid)

pool/ : tous les paquets des versions et pré-versions de Debian.

tools/ : divers utilitaires DOS (disquettes de démarrage, partitionner un disque dur)

doc/ : contient la documentation de base de Debian, la FAQ ..

Passer à la distribution testing ?

Travaux Pratiques

# éditer le fichier sources et y remplacer stable par testing

# mise à jour de la base locale avec les paquets "testing"

apt-get update

# mise à jour générale des paquets déjà installés

apt-get upgrade

# nettoyer le cache des vieux paquets

apt-get autoclean

Table des index

A

APT	13, 16

D

debian	10, 14, 15, 18, 19, 20, 22, 23, 24, 36, 37, 76

G

GNU	18

L

LDAP	47, 53, 54, 55, 56

linux	18

M

MySQL	27, 78, 83, 84

N

navigateur	28, 29, 48, 83, 86, 89

P

PEAR	88, 90

PHP	94

R

registrar	5, 6, 11, 25

S

SPIP	47, 48, 56, 85, 88, 96

104

Gestion des paquets DEBIAN

Voici la structure du répertoire debian

Installation d'AlternC sur un serveur

IRONDELLE ANTHONY

2005-07-25T10:59:00

Laurent DEGUILHEM