Welcom to Your World



Projet No 3 : Un auto-configurateur de statistiques pour Apache

 

Olivier MONTABERT
Bounarith TAN
ESSI3 1997-98 SAR

Présentation du sujet

Proposé par : Michel Buffa
Outils utilisés : perl, javascript, scripts CGI, interface HTML
Description : Lorsqu'on fait de l'hébergement de serveur web, on est amené à gérer plusieurs sous serveurs. Soit on gère plusieurs serveurs virtuels avec des noms différents (www.darty.fr, www.decathlon.fr, etc.), soit sous un même nom de domaine (www.essi.fr/~buffa, www.essi.fr/ade, etc.). Le sujet consiste à écrire un ensemble scripts CGI avec interface web associée pour pouvoir aisément générer des outils qui vont mettre à jour la présentation des statistiques à intervalle réguliers (tous les soirs à minuit), avec la config qu'il faut :
Un logo personnel, des infos personnalisées, etc. Dans le cas de serveur hébergés sous un même nom (www.essi.fr/~buffa par exemple), il v falloir extraire du fichier de logs les lignes correspondant à un certain critère (celle qui contiennent ~buffa par exemple) avant de lancer les outils d'analyse de logs. En gros, j'ai une page web en face de moi, je peux créer en entrant les données qu'il faut un nouveau serveur virtuel ou un nouveau "sous serveur" (www.essi.fr/~buffa par exemple), modifier le fichier de config d'apache en conséquence, générer les fichiers de config pour l'outil d'analyse "analog", générer les scripts d'extraction de sous-fichiers de logs, et positionner les appels à ces scripts dans un crontab pour qu'ils soient exécutés le soir à minuit. Comme ça, buffa peut à n'importe quel moment aller voir ses stats, elle seront toujours à jour, puisque rafraîchies tous les soirs.

Notre réalisation

Gestion de configuration d'Apache

Structure de l'arborescence du serveur Apache:

$APACHE_HOME

|- cgi-bin

|- account_request.pl, domain_request.pl, createaccount.cgi, createdomain.cgi

|- conf

|- icons

|- logs

|- webmaster (les demandes attendants d'être validées par le webmaster, accessible uniquement par le webmaster)

|- users (serveur hébergeant sous le même nom, serveur yourworld.org)

|- index.html, account.html (formulaire de demande de création de compte), domaine.html (formulaire de demande de création d'un domaine), statperf.html (formulaire permettant de personnaliser ses pages de statistiques), annuaire.html.

|- webmaster (les demandes attendants d'être validées par le webmaster, accessible uniquement par le webmaster)

|- ade

|- buffa

|- stats (accessible uniquement par le propriétaire)

|- fichiers config de statistiques et les stats en html

|- ...

|- domains (serveurs virtuels)

|- www.darty.fr

|- statperf.html (formulaire permettant de personnaliser ses pages de statistiques).

|- stats

|- fichier de config de statistiques et les stats en html

|- www.decathlon.fr

|- ...

Pour effectuer une demande de création de compte ou de domaine, on se connecte au serveur yourworld.org et remplit le formulaire correspondant à ses souhaits. La création n'est effective qu'après la validation du webmaster, qui va se connecter au serveur yourword.org/webmaster, ce répertoire étant protégé par mot de passe, le webmaster doit s'authentifier. Dans ce répertoire il découvrira les formulaires de demandes remplis au format html. Si tous les données sont correctes, il n'a plus qu'à le valider les scripts CGI s'en charges de configurer l'Apache et de créer les répertoires et mettre les droits qu'il faut. Et un mail est envoyé automatiquement à la personne concernée pour lui informer que son serveur est disponible.

Gestion des statistiques

A la création de compte ou de domaine, l'utilisateur a une présentation par défaut de ses statistiques. Pour personnaliser la présentation de ses statistiques, l'utilisateur doit remplir le formulaire statperf.html.

Remarque, la demande de personnalisation et l'accès aux pages de statistiques, répertoire stats, nécessite l'authentification du propriétaire.

Les fichiers de personnalisation de statistiques sont placer dans le repertoire de l'utilisateur ou du domaine. Le propriétaire du compte ou domaine peut ainsi demander plusieurs statistiques sur ses différentes pages web.

La mise à jour des statistiques est effectuée automatiquement tous les soirs par crontab.

Démos

projet_internet.tar.gz

yourworld.org




What shall we do ? :
Create your own account on the Net
Create your own domain server on the Net
Yellow pages of the accounts already created.

The Apache documentation has been included with this distribution. You are free to use the image below on an Apache-powered web server. Thanks for using Apache!