Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ceci est une ancienne révision du document !
Ce bref tutorial a deux objectifs :
Tout est parti du besoin que j'ai eu de devoir tester des outils de “création de site” au sein de l'intranet de mon travail.
Il me fallait donc un serveur Apache et la possibilité de tester plusieurs sites, un par outil (Divers CMS, Divers Wiki… ). Le tout en local.
Or, un coup de Google m'a montré beaucoup des liens dans la langue de Shakespear, mais bien peu dans celle de Molière et en tous les cas rien qui m'ait beaucoup avancé.
Je vais donc, avec ce tutoriel, essayer de vous (me) faire gagner du temps
“hère we Go…”
Je ne reviens pas sur les modalités d'installation de ces outils, reportez vous à cette page du wiki Debian-Facile
Dans Apache2, les sites disponibles (on parle de virtualhosts, ou vhost) sont déclarés à l'aide de fichier dans le répertoire : /etc/apache2/sites-avalaible/
Partons du principe que vous souhaitez mettre en ligne 2 sites que nous nommerons “site-1” et “site-2” (pourquoi faire compliqué ? )
Apache vous livre lors de son installation dans ce même répertoire un fichier “default” qui va nous servir de base pour nos 2 sites
On va donc en faire une copie
# cp /etc/apache2/sites-avalaible/default /etc/apache2/sites-avalaible/site-1
Puis on refait la même chose pour le site-2
Dans votre éditeur de texte favori (pas un traitement texte attention !) ouvrez le fichier site-1
Faisons un rapide tour d'horizons des sections qui nous intéressent:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
Voyons voir a quoi pourrait ressembler notre fichier une fois adapté à nos besoins:
<VirtualHost *:80> ServerAdmin MonMail@gmail.com ServerName www.site-1.fr ServerAlias site-1.fr *.site-1.fr DocumentRoot /home/www/site-1 DirectoryIndex index.php <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /home/www/site-1> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /home/www/apache_log/error_site-1.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /home/www/apache_log/access_site-1.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
Renouveler les opérations pour créer un fichier de vhost pour site-2
Une fois les fichiers de vhost créés, il reste a les activer pour qu'Apache2 les prennent en compte.
Ce mecanisme permet d'avoir tout les fichiers de vhosts que l'on veut et de n'activer que ceux nécessaires.
Deux méthodes possible:
/etc/apache2/sites-enable
pointant vers/etc/apache2/sites-avalaible/site-1
#ln -s /etc/apache2/sites-avalaible/site-1 /etc/apache2/sites-enable
# a2ensite site-1
…et comme ils ne font pas les choses a moitié, ils ont aussi prévu la désactivation
# a2dissite site-1
/etc/apache2/conf.d
Tout ce qui est dans ce répertoire est lu au démarrage d'Apache2
# cd /etc/apache2/conf.d
# touch virtual-host.conf
Puis remplissez le comme suit (en adaptant a votre cas biensur)
Alias /site-1 /home/www/site-1 Alias /site-2 /home/www/site-2
Éditez votre fichier /etc/hosts
et modifiez le comme suit pour que votre machine fasse le rapport entre vos vhost et le localhost
Remplacer le 192.168.10.100 par l'IP de votre machine
127.0.0.1 localhost site-1 site-2 127.0.0.1 NomDeMachine.MonDomaine.org NomDeMachine 192.168.10.100 site-1 192.168.10.100 site-2 127.0.0.1
Voir : invoke-rc.d
# invoke-rc.d apache2 restart
Ouvrez votre navigateur et testez en tapant dans la barre d'adresse:
localhost/site-1.fr
et/ou localhost/site-2.fr
Puis
192.168.10.100/site-1.fr
et/ou 192.168.10.100/site-2.fr
Vous devriez voir apparaitre à chaque test la page d'accueil des site-1 et site-2
Comme dit en préambule, il s'agit là de la mise en forme des quelques note que j'ai prise au cours de mes tests.
Je ne suis pas un spécialiste de la chose et ce document peut surement être amélioré et contient peut-être (surement ?) des erreurs et des approximations.
Si tel est la cas, n'hésitez pas à les signaler sur le forum de Debian-facile et à les corriger si vous êtes rédacteur.
Le wiki est fait pour cela
Les remarque peuvent être faites dans ce topic : http://www.debian-facile.org/forum/viewtopic.php?id=3659