Академический Документы
Профессиональный Документы
Культура Документы
Ainsi, on a réussi à créer notre projet gtr_apache. Ensuite, il faut initialiser l'environnement trac pour
notre projet récemment importé dans Subversion, ce que l'on fait au moyen de la série de commande
suivante :
# trac-admin /var/trac/gtr_apache initenv
# chown -R www-data /var/trac/gtr_apache
Notez encore une fois que je crée la racine trac dans /var/trac mais vous pouvez tout à fait utiliser un
autre emplacement.
Créer un ou plusieurs utilisateurs Trac et Subversion, gérer les autorisations
Créons tout d'abord le fichier de stockage des mots de passe Trac/Subversion et ajoutons un utilisateur
maintener :
# trac-admin /var/trac/gtr_apache permission add maintener TRAC_ADMIN
On peut également imaginer la création d'un compte utilisateur développeur, qui peut créer des tickets, en
fermer et maintenir le wiki :
# htpasswd -c /etc/apache2/dav_svn.passwd dev
# trac-admin /var/trac/gtr_apache permission add dev WIKI_CREATE WIKI_MODIFY
TICKET_CREATE TICKET_MODIFY
Il nous reste qu’à désactiver les contributions anonymes comme ceci :
# trac-admin /var/trac/gtr_apache permission remove anonymous WIKI_CREATE
WIKI_MODIFY TICKET_CREATE TICKET_MODIFY
Ceci fait, téléchargez le fichier de plugin TracWebAdmin sur le site de Trac, supprimez son extension
.zip et installez-le au moyen du programme easy_install précédemment installé, comme suit :
# wget http://trac.edgewall.org/attachment/wiki/WebAdmin/TracWebAdmin-0.1.2dev_r6060-
py2.4.egg.zip?format=raw
# mv TracWebAdmin-0.1.2dev_r6060-py2.4.egg.zip\?format\=raw TracWebAdmin.egg
# easy_install TracWebAdmin.egg
<VirtualHost *>
ServerAdmin webmaster@mondomaine.org
ServerName trac.mondomaine.org
DocumentRoot /var/trac/gtr_apache
<Location />
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /var/trac/gtr_apache
PythonOption TracUriRoot /
PythonPath "sys.path + ['/var/trac/gtr_apache']"
</Location>
ErrorLog /var/log/apache2/error.trac.domaine.org.log
CustomLog /var/log/apache2/access.trac.domaine.org.log combined
<Location /svn>
DAV svn
SVNPath /var/svn/gtr_apache
AuthType Basic
AuthName "gtr_apache Subversion repository"
AuthUserFile /etc/apache2/dav_svn.passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
<Location "/login">
AuthType Basic
AuthName "Trac login"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
</VirtualHost>
# 2enmod mod_python
Ceci fait, il nous reste à activer le nouvel hôte apache et à relancer ce dernier :
# a2ensite trac.mondomaine.org
# /etc/init.d/apache2 restart
Pour vérifier que tout s'est déroulé correctement, faites pointer votre navigateur préféré vers l'adresse
trac.mondomaine.org, vous devriez accéder sans encombres à votre instance nouvellement créée. Vous
pouvez vous loguer en cliquant sur le lien Login et en fournissant les paramètres d'accès utilisateur que
vous avez définis précédemment. Si vous vous loguez en administrateur Trac, vous devriez disposer du
menu Admin donnant accès à l'extension WebAdmin où vous pourrez ajuster les paramètres de votre
instance à vos besoins.
Conclusion
Ce mini projet nous a donc permis à comprendre le fonctionnement du serveur Apache2 et son utilité pour
la création de site web. On a aussi su comment utiliser Apache avec les outils Trac et Subversion.
Fichier create_svn_repo.sh
#!/bin/bash
# Vous pouvez éditer ces variables selon vos besoins
SVN_ROOT="/var/svn"
SVN_TMP_PATH="/tmp/svn"
APACHE_USER="www-data"
APAGE_GROUP="www-data"
TRAC_ROOT="/var/trac"
TRAC_SHARE="/usr/share/trac"
echo "#######################################"
echo "Création d'un nouveau projet Subversion"
echo "#######################################"
echo ""
echo "Tapez le nom du nouveau projet :"
read PROJECT_NAME
if [ -z "$PROJECT_NAME" ]; then
echo "$PROJECT_NAME n'est pas un nom de projet valide.";
exit 0
fi
# Done !
echo ""
echo "Projet subversion $PROJECT_NAME créé avec succès dans $SVN_ROOT/$PROJECT_NAME
!"
read GENERATE_TRAC_INSTANCE
Il suffit juste donc de créer sous le nom create_svn_repo.sh avec n’importe qu’elle éditeur de texte et
l’enregistrer dans un répertoire. Puis il faut le rendre exécutable par # chmod + x create_svn_repo.sh et
donc pour l’exécuter, il suffit d’être dans le répertoire contenant ce fichier et taper la commande
# create_svn_repo.sh et ainsi on pourra créer notre projet comme précédemment.
Après cela il faut ajouter cette ligne aussi dans /ect/apache2/apache2.conf, faire donc :
# nano /ect/apache2/apache2.conf et y ajouter ErrorDocument 404 /erreur/404.html
Il faut d’abord créer le repertoire erreur dans /var/www et y créer ensuite le fichier 404.html comme
suit, la procédure est donc : création du répertoire, après se placer dans ce répertoire et créer le fichier.
# mkdir /var/www/erreur
#cd /var/www/erreur
# gedit 404
<html>
<head><title>Erreur 404 Not found</title></head>
<body>
<center><font size = 5 color = ‘red’>La page demandé n’existe pas dans le serveur.</font></center>
</body>
</html>
Enregistrer le fichier avec « Ctrl+S » au format html (extension .html) avant de quitter gedit.
Ainsi tous les erreurs de nature 404 Not Found vont donc être redirigés vers /var/www/erreur/404.html et
donc du coup on ne vas pas afficher les informations sur notre serveur Apache ou bien le système
d’exploitation utilisé par notre hôte.