Tips et astuces : apprendre à configurer Apache httpd

18 septembre 2008 at 0 h 27 min 4 commentaires

Cet article est un fourre tout des directives de configurations du serveur web Apache les plus basiques. Il s’adresse donc aux débutants qui veulent apprendre comment configurer Apache (v.2.x).

N’hésitez pas à poser des questions parmi vos commentaires, je ferai de mon mieux pour y répondre. Si vous constatez une erreur, ou si vous voulez ajouter une précision, le commentaire sera bienvenu!

Généralités

Où placer les directives ?

Les directives sont à placer dans le contexte global (/etc/apache2/apache2.conf chez Debian, généralement /etc/httpd.conf ailleurs) mais peuvent etre restreinte spécifiquement à un « host » entre des balises <VirtualHost> où à un répertoire entre des balises <Directory>. Les directives doivent donc être placées là ou vous voulez qu’elles prennent effet !

Que signifie… ?

AllowOverride (None / All)

AllowOverride permet de spécifier si l’utilisation d’un fichier .htaccess sera prise en compte ou non.

DocumentRoot

Se place dans le contexte global ou dans un virual host pour donner le chemin (l’arborescence unix) à partir duquel le serveur web va servir les données. Exemple avec DocumentRoot = /var/www/test/

http://www.adresse_du_serveur.com/index.html affichera le fichier UNIX
    /var/www/test/index.html.

NameVirtualHost

NameVirtualhost est la directive qui permet d’associer une adresse ip au serveur afin qu’il redispatche les requêtes sur les Virtualhost. Afin d’écouter à la foi la boucle locale, et l’adresse ip propre du serveur, on peut mettre *, en spécifiant le port, en lieu et place de la seule adresse du serveur.

NameVirtualHost *:80

Options

Cette directive est un fourre tout, qui permet d’activer:

– L’éxécution de scripts CGI dans l’arborescence définie par documentRoot.(ExecCGI)
– Le suivi des liens symboliques au sein de l’arborescence du documentRoot (FollowSymLinks). Exemple: si un dossier est placé a l’etérieur du document root, pour y accéder, il suffit de taper un ls -n /dossierCible /votre_documentRoot/www/ pour y accéder.
– et bien d’autres options encore…que nous ne listerons pas ici.

ServerName

Cette rubrique permet d’associer un host apache a une adresse de type DNS. SI vous possedez le domaine MONDOMAIN.COM, et que vous avez configuré le DNS pour que sous-domaine.mon-domaine.com pointe sur l’ip de la machine sur laquelle tourne apache, alors vous pouvez définir le serverName suivant:

ServerName sous-domaine.mon-domaine.com:80

Ce sera tout pour aujourd’hui, avec ces quelques directives, vous pourrez aisément comprendre les fichiers d’example des <VirtualHost>. Vous avez également le nécessaire pour pouvoir associer des sites différents à chacun de vos sous domaines (si vos DNS sont bien configurés…).

AddDefaultCharset

J’avais oublié une irective quasiment indispensable: AddDefaultCharset
Vous voulez spécifier par défaut une locale spécifique ? bonne idée! Si votre serveur doit servir du contenu en plusieurs locales différentes, vous pouvez même associer un charset différent par vhost avec
AddDefaultCharset UTF-8

extensions d’Apache?

Apache peut être très facilement étendu grâce a un système de « modules ». Les modules Apache permettent d’ajouter de nouvelles fonctionnalités comme par exemple le traitement des requêtes, la mise en cache de fichiers, l’amélioration de la sécurité, etc.

Un module s’active avec la directive

LoadModule nom_du_module chemin_du_fichier

Le nom_du_module est une variable qui est est listée dans la liste des définitions de modules.

Entry filed under: administration, apache, tutorial. Tags: , , .

Installer FluxBB (anciennement punBB) sur son forum dédié HOW-TO : Serveur Tomcat sur Debian, Apache en proxy avec AJP

4 commentaires Add your own

  • 1. Apache: configurer correctement les vhosts « Haveacafe’s Weblog  |  23 septembre 2008 à 14 h 31 min

    […] serait possible d’inclure tous ces vhost dans le fichier httpd.conf (cf. article Aprendre à configurer Apache httpd). Sur Debian, la gestion des sites web avec Apache est facilitée par l’organisation des […]

    Répondre
  • 2. Marc-Aurèle Laquerre  |  26 septembre 2008 à 12 h 54 min

    je ne suis pas sur si ta question est « est-ce qu’on peut spécifier des vhosts directement dans httpd? » ou si tu demandes « est-ce que tu peux ajouté la documentation sur les vhosts dans cette docu présent » si c’Est la première, la réponse c’est oui mais ce n’est pas trés esthétique…

    Répondre
  • 3. haveacafe  |  26 septembre 2008 à 13 h 22 min

    La première réponse est une citation automatique de l’article…

    Sinon je suis d’accord avec toi ce n’est pas très propre de regrouper en vrac tous les vhost, mais c’est une question de goût. Pour trois / quatre sites hébergés par un apache, ça peut être intéressant de tous les regrouper dans le httpd.conf. C’est ainsi dans la configuration par défaut sur les distrib à base RedHat Fedora / Centos

    Répondre
  • […] on passe les page servies en ISO avec la commande addDefaultCharset, cf. les directives de bases d’Apache httpd (dommage quand même d’en arriver là!). Soit on convertit notre fichier en UTF-8 a […]

    Répondre

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Trackback this post  |  Subscribe to the comments via RSS Feed


Articles récents


%d blogueurs aiment cette page :