Apache dans SUSE Linux peut être configuré de deux façons différentes : avec YaST ou manuellement. La configuration manuelle offre un niveau de détail supérieur, mais est moins pratique que l'interface utilisateur graphique de YaST.
![]() | Modifications de configuration |
|---|---|
La modification de certaines valeurs de configuration d'Apache ne prend effet qu'après le redémarrage d'Apache. Ceci se produit automatiquement lorsque vous terminez la configuration avec YaST et que l'option du est sélectionnée. Le redémarrage manuel est décrit dans la Section 46.3.3, « Activation, démarrage et arrêt d'Apache ». La plupart des modifications de configuration ne nécessitent qu'un rechargement avec rcapache2 reload. | |
YaST vous permet de transformer un hôte de votre réseau en serveur Web. Pour configurer un tel serveur, démarrez YaST et sélectionnez +. Lorsque vous lancez ce module pour la première fois, l'assistant (wizard) serveur HTTP démarre et vous invite à prendre quelques décisions de base concernant l'administration du serveur.
L'assistant (wizard) serveur HTTP comprend cinq étapes ou boîtes de dialogue. Dans la dernière boîte de dialogue, vous pouvez passer en mode de configuration pour experts afin d'effectuer des paramétrages encore plus pointus.
Spécifiez les interfaces réseau et les ports qu'Apache utilise pour écouter les requêtes entrantes. Vous pouvez sélectionner toute combinaison d'interfaces réseau existantes et leurs adresses IP respectives. Vous pouvez utiliser les ports de ces trois plages (ports connus, ports enregistrés et ports dynamiques ou privés) qui ne sont pas réservés par d'autres services.
Le paramètre par défaut est l'écoute sur toutes les interfaces réseau (adresses IP) sur le port 80. Lorsque le pare-feu est activé, vous pouvez vérifier si vous devez y activer les ports Apache.
Cochez la case pour ouvrir les ports dans le pare-feu sur lequel le serveur Web procède à l'écoute. Cette opération est nécessaire pour rendre le serveur Web disponible sur le réseau, qui peut être un réseau local, étendu ou le réseau Internet public. Il est utile de maintenir fermé le port Listen dans les situations de test où aucun accès extérieur au serveur Web n'est nécessaire. Si les paramètres par défaut vous conviennent ou si avez effectué des modifications, cliquez sur pour poursuivre la configuration.
Le paquetage SUSE Linux Apache est fourni avec de nombreux modules Apache. Ces modules étendent les fonctionnalités d'Apache et sont disponibles pour une vaste gamme de tâches. L'option de configuration permet le chargement et le déchargement de divers modules Apache au moment du démarrage du serveur. Pour une explication plus détaillée des modules, consultez la Section 46.5, « Modules Apache ». Cliquez sur pour continuer.
Cette option concerne le serveur Web par défaut. Comme l'explique la Section 46.4, « Hôtes virtuels », Apache peut servir plusieurs domaines à partir d'une seule machine physique. Le premier domaine déclaré (ou VirtualHost) du fichier de configuration est généralement appelé hôte par défaut. Pour modifier les paramètres de l'hôte, choisissez l'entrée correspondante dans le tableau, puis cliquez sur . Pour ajouter un hôte supplémentaire, cliquez sur . Pour supprimer un hôte, sélectionnez-le et cliquez sur .
À cette étape, vous pouvez ajouter une option et une valeur SSL (Secure Sockets Layer) aux paramètres de l'hôte. Pour plus d'informations à ce sujet, consultez Section 46.3.1.3, « Ajout de la prise en charge SSL ».
Vous trouverez ci-dessous la liste des paramètres par défaut du serveur :
Comme l'explique Section 46.2.3.4, « Racine du document », /srv/www/htdocs est l'emplacement par défaut à partir duquel Apache diffuse des pages Web.
/srv/www/htdocs est l'emplacement des pages Web.
À l'aide des directives Alias, les URL peuvent être assignées à des emplacements physiques du système de fichiers. Par conséquent, vous pouvez accéder à un chemin particulier même en dehors de Document Root dans le système de fichiers par l'intermédiaire d'une URL avec un alias sur ce chemin.
L'alias /icons SUSE Linux par défaut pointe vers /usr/share/apache2/icons pour les icônes Apache affichées dans la vue d'index de répertoire.
/usr/shareapache2/icons est l'emplacement du répertoire Alias.
Comme la directive Alias, la directive ScriptAlias assigne une URL à un emplacement de système de fichiers. La différence est que ScriptAlias désigne le répertoire cible comme un emplacement CGI, c'est-à-dire que les scripts CGI doivent être exécutés à cet emplacement.
/srv/www/cgi-bin est l'emplacement du répertoire ScriptAlias.
/etc/apache2/conf.d/*.conf est le répertoire qui contient les fichiers de configuration fournis avec certains paquetages. /etc/apache2/conf.d/apache2-manual?conf est le répertoire qui contient tous les fichiers de configuration apache2-manual.
Cette option fait référence à la Section 46.4, « Hôtes virtuels ».
permet à un VirtualHost de répondre à une requête sur son nom de serveur (consultez la Section 46.4.1, « Hôtes virtuels à base de nom »).
permet à Apache de sélectionner l'hôte demandé par les informations d'en-tête HTTP que le client envoie. Consultez la Section 46.4.2, « Hôtes virtuels à base d'adresse IP » pour plus d'informations sur les hôtes virtuels basés sur IP.
Cette option indique l'URL par défaut utilisée par les clients pour contacter le serveur Web. Utilisez un nom de domaine complet (consultez Domaine) pour atteindre le serveur Web à l'adresse http:// ou son adresse IP.
nom de domaine complet
Fournit l'adresse électronique de l'administrateur du serveur Web pour cette option.
Après avoir terminé l'étape , cliquez sur pour poursuivre avec la boîte de dialogue de configuration.
À cette étape, l'assistant affiche la liste des hôtes virtuels déjà configurés (consultez la Section 46.4, « Hôtes virtuels »). L'un des hôtes est identifié comme étant celui par défaut (par un astérisque en regard du nom du serveur). Pour définir un hôte par défaut, sélectionnez le serveur et cliquez sur .
Pour ajouter un hôte, cliquez sur pour ouvrir la boîte de dialogue qui permet d'entrer les informations de base concernant cet hôte. La zone comprend le nom du serveur, la racine de contenu du serveur et le courrier électronique de l'administrateur. Le texte d'aide dans le cadre situé à gauche de la fenêtre explique chacun de ces éléments en détail. L'option est utilisée pour déterminer le mode d'identification d'un hôte. Vous pouvez indiquer si vous souhaitez déterminer un serveur de requête à partir des en-têtes HTTP ou par l'adresse IP du serveur en sélectionnant l'option correspondante. L'autre méthode consiste à déterminer l'hôte virtuel par l'adresse IP utilisée par le client lors de la connexion au serveur. Vous pouvez également activer la prise en charge SSL en cochant cette case. Vous pouvez aussi spécifier le chemin du fichier de certificat. Cliquez sur pour afficher le répertoire par défaut /etc/apache2/ssl.crt. Après avoir entré toutes les informations, cliquez sur pour passer à la dernière étape de configuration.
Il s'agit de la dernière étape de l'assistant. Indiquez-y le mode et le moment de démarrage du serveur Apache, à savoir lors de l'amorçage ou manuellement. Le port sélectionné précédemment s'affiche également, ainsi que les hôtes par défaut et virtuels. Si ces paramètres vous conviennent, cliquez sur pour achever la configuration.
Le module Serveur HTTP vous permet également d'affiner davantage la configuration. Cliquez sur pour obtenir des options de configuration supplémentaires. Vous pouvez alors effectuer les modifications suivantes :
Sélectionnez et cliquez sur pour ouvrir une nouvelle fenêtre dans laquelle vous pouvez ajouter, supprimer ou modifier des entrées.
Sélectionnez et cliquez sur pour pouvoir modifier l'état des modules Apache2 en cliquant sur . Cliquez sur pour ajouter un nouveau module.
Sélectionnez et cliquez sur pour pouvoir modifier les paramètres de l'hôte. Vous pouvez également ajouter, modifier ou supprimer des options.
Sélectionnez et cliquez sur pour pouvoir ajouter, supprimer, modifier ou sélectionner un hôte par défaut.
Dans toutes les boîtes de dialogue précédentes, vous pouvez cliquer sur pour consulter le journal d'erreurs et le journal d'accès. Cliquez sur pour achever la configuration et revenir au centre de contrôle YaST.
Pour ajouter une option SSL à l'hôte, cliquez sur à la troisième étape (hôte par défaut) de l'assistant (wizard) serveur HTTP. Si votre serveur a déjà été configuré et que vous n'avez plus accès à l'assistant, vous pouvez configurer une option SSL en sélectionnant dans la boîte de dialogue Configuration du serveur HTTP ou en cliquant sur , puis sur . Dans ces deux cas, la fenêtre contextuelle qui apparaît vous permet de sélectionner une option et de la confirmer en cliquant sur . Vous êtes ensuite invité à entrer la valeur de l'option sélectionnée. Cette opération peut se limiter à l'activation ou à la désactivation de l'option, mais il arrive que vous deviez entrer la valeur appropriée. En cas de doute, consultez la documentation sur les paramètres de valeur lors de la configuration SSL. Dès que vous cliquez sur , l'option et la valeur apparaissent dans la liste de configuration de l'hôte. Cliquez sur pour accéder à l'étape suivante de la boîte de dialogue de configuration.
Si l'option apparaît dans la liste de configuration de l'hôte, cliquez sur pour ouvrir la boîte de dialogue de configuration correspondante. Sinon, cliquez sur , sélectionnez , puis cliquez sur . La boîte de dialogue s'ouvre alors automatiquement. Vous pouvez ainsi ajouter, supprimer ou modifier des options SSL. Cliquez sur pour revenir à l'assistant (wizard) serveur HTTP.
La configuration manuelle d'Apache implique la modification des fichiers de configuration en texte brut en tant qu'utilisateur root.
![]() | Pas de module SUSEconfig pour Apache2 |
|---|---|
Le module SUSEconfig pour Apache2 a été retiré de SUSE Linux. Il n'est plus nécessaire d'exécuter | |
/etc/sysconfig/apache2 contrôle certains paramètres généraux d'Apache, tels que les modules à charger, les fichiers de configuration supplémentaires à inclure, les drapeaux avec lesquels on doit démarrer le serveur et ceux qui doivent être ajoutés à la ligne de commande. Chaque option de configuration de ce fichier est très documentée et n'est donc pas mentionnée ici. Pour un serveur Web d'utilité générale, /etc/sysconfig/apache2 doit suffire à tous les besoins de configuration. Pour les configurations spécifiques, reportez-vous à Section 46.3.2.2, « Directives Apache dans /etc/apache2/httpd.conf: Environnement global
».
![]() | Fichiers créés automatiquement au démarrage du serveur |
|---|---|
Ne modifiez pas ces fichiers manuellement. Modifiez plutôt les paramètres correspondants dans | |
Pour peaufiner la configuration, consultez les fichiers qui se trouvent dans /etc/apache2/*, en particulier pour les modifications de configuration manuelles apportées aux hôtes virtuels, à l'environnement global ou au serveur principal.
SUSE Linux utilise /etc/apache2/httpd.conf comme point central de référence pour d'autres fichiers de configuration. Ne modifiez le fichier que pour activer les fonctions qui ne sont pas disponibles dans /etc/sysconfig/apache2. Les directives de la section Environnement global de httpd.conf concernent le fonctionnement global d'Apache.
Les sections qui suivent décrivent certaines des directives qui ne sont pas disponibles dans YaST. Les principales directives telles que Document Root (Document Root) sont essentielles et requises dans l'Environnement global et pour l'hôte virtuel.
Les paramètres et directives suivants sont classés par affiliation logique et domaine de configuration. Ils doivent être définis dans /etc/apache2/httpd.conf.
La directive LoadModule spécifie un module Apache à charger lors de l'exécution. identificateur_module est le nom du module dans sa documentation. /chemin/vers/module peut être un chemin absolu ou relatif pointant vers le fichier.
Exemple 46.1. Directive LoadModule
LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so
Sur SUSE Linux, il n'est pas nécessaire d'utiliser des instructions LoadModule directement. À la place, APACHE_MODULE est utilisé dans /etc/sysconfig/apache2.
Le nombre maximal de clients qu'Apache peut gérer simultanément. MaxClients doit être suffisamment grand pour gérer autant de requêtes simultanées que le site Web s'attend à en recevoir, mais suffisamment petit pour garantir que la RAM physique est suffisante pour tous les processus.
Les directives de la section Serveur principal s'appliquent lorsque des requêtes du client ne sont pas gérées par un Hôte virtuel et doivent donc être traitées par un serveur par défaut ou principal. En outre, les paramètres définis dans ce contexte sont les paramètres par défaut pour tous les hôtes virtuels configurés. Il en résulte que toutes les directives du serveur principal peuvent également être définies dans le contexte Hôte virtuel, et remplacent les paramètres par défaut.
Définissez les fichiers qu'Apache doit rechercher pour terminer une adresse URL sans spécification de fichier. Le paramètre par défaut est index.html. Par exemple, si le client demande l'adresse URL http://www.example.com/foo/ et si le répertoirefoo contient un fichier nommé index.html, Apache transmet cette page au client. Pour déclarer plusieurs files, séparez-les par des espaces.
Cette directive peut s'utiliser uniquement à l'intérieur d'une déclaration <Répertoire></Répertoire>. (voir Répertoire).
AllowOverride spécifie les options d'accès et d'affichage qu'un fichier .htaccess (ou d'autres fichiers spécifiés par AccessFileName décrits dans Section 46.3.2.3.3, « noms de fichier AccessFileName
») peut remplacer.
Les valeurs possibles sont :
Toutes
Toutes les options peuvent être remplacées par un fichier .htaccess.
Aucune
Aucune option ne peut être remplacée par un fichier .htaccess.
AuthConfig
Les répertoires peuvent être protégés par mot de passe à l'aide d'un fichier .htaccess.
FileInfo
Permet l'utilisation de directives contrôlant les types de document au sein d'un fichier .htaccess. Un exemple classique consiste à configurer des pages d'erreur personnalisées avec ErrorDocument (voir http://httpd.apache.org/docs-2.0/mod/core.html#errordocument).
Indexes
Dans le cas où aucun document DirectoryIndex n'a été trouvé, ce paramètre permet à Apache de contrôler l'affichage du contenu du répertoire.
Limit
Contrôle l'accès à un répertoire ou à certains fichiers pour les clients. Les directives Allow, Deny et Order sont utilisées à cette fin au sein d'un fichier .htaccess. Pour connaître l'utilisation de ces directives, consultez la documentation du module d'accès (http://httpd.apache.org/docs-2.0/mod/mod_access.html).
Options
Permet l'utilisation des directives Options et XBitHack au sein d'un fichier .htaccess. La directive Options (http://httpd.apache.org/docs-2.0/mod/core.html#options) contrôle les fonctions du serveur qui sont disponibles dans un répertoire particulier. La directive XBitHack (http://httpd.apache.org/docs-2.0/mod/mod_include.html#xbithack) permet aux fichiers dont l'octet execute est défini pour être analysé en tant que SSI (voir Section 46.5.1.1, « Inclusions côté serveur avec mod_include
»).
![]() | Important |
|---|---|
Ces paramètres sont appliqués de façon récurrente au répertoire actuel et à ses sous-répertoires. Ces options, excepté | |
AccessFileName définit le nom des fichiers qui peuvent remplacer les permissions d'accès globales et d'autres paramètres des répertoires (voir Répertoire).
Le paramètre par défaut est .htaccess. Pour déclarer plusieurs files, séparez-les par des espaces.
Spécifie le nom du fichier dans lequel Apache consigne les messages d'erreur. Apache peut également effectuer la consignation dans une commande ou un script. Le paramètre par défaut /var/log/apache2/error_log.
Ceci définit le niveau de commentaires des messages du journal à enregistrer. Par ordre croissant de niveau de commentaires (et par ordre décroissant de gravité des messages), le niveau peut être
emerg
alert
crit
error
warn
notice
info
debug
Le paramètre par défaut est warn. Il est recommandé pour l'utilisation quotidienne. Pour des utilisations de débogage, info et debug apportent des informations utiles.
Pour gérer plusieurs domaines ou noms d'hôte sur une machine physique, des conteneurs Hôte virtuel sont nécessaires. Ils sont déclarés dans les sections Hôtes virtuels de la configuration. Pour plus de détails sur la syntaxe et les fonctionnalités des hôtes virtuels, reportez-vous à Section 46.4, « Hôtes virtuels ».
Pour activer le serveur Web Apache au démarrage, utilisez l'éditeur de niveau d'exécution de YaST. Pour le démarrer, sélectionnez + dans YaST. Naviguez ensuite jusqu'à l'entrée . Choisissez pour qu'Apache démarre automatiquement lors de l'amorçage de la machine. Les personnes expérimentées peuvent utiliser l'outil chkconfig pour obtenir la même chose sur la ligne de commande : /sbin/chkconfig -a apache2.
Pour démarrer ou arrêter Apache, utilisez le script /usr/sbin/rcapache2 en tant qu'utilisateur root. /usr/sbin/rcapache2 prend les paramètres suivants pour démarrer et arrêter le serveur Web Apache :
start
Démarre le serveur Web Apache.
startssl
Démarre le serveur Web Apache avec le support SSL. Pour plus d'informations sur la configuration d'Apache avec SSL, reportez-vous à Section 46.3.1.3, « Ajout de la prise en charge SSL » et à Section 46.5.2.2, « Secure Sockets Layer et Apache : mod_ssl ».
stop
Arrête le serveur Web Apache.
configtest
Teste la configuration Apache sans arrêter, démarrer ou redémarrer le serveur Web. Du fait que ce test est forcé chaque fois que le serveur est démarré, rechargé ou redémarré, il n'est généralement pas nécessaire de l'exécuter de façon explicite.
restart
Arrête, puis redémarre le serveur Web.
try-restart
Redémarre le serveur Web s'il fonctionne.
restart-hup
Redémarre le serveur Web Apache en lui envoyant un signal SIGHUP. Normalement, ceci n'est pas utilisé.
graceful et reload
Arrête le serveur Web en conseillant à tous les processus Apache dupliqués de terminer leur requête avant de se fermer. À mesure qu'un processus disparaît, il est remplacé par un qui vient d'être démarré, ce qui se traduit par le "redémarrage" complet d'Apache.
![]() | Astuce |
|---|---|
rcapache2 | |
status
Vérifie l'état lors de l'exécution du serveur Web Apache.
Exemple 46.7. Exemple de résultat lors du démarrage et de l'arrêt d'Apache
tux@sun # rcapache2 status
Checking for httpd2: unused
tux@sun # rcapache2 configtest
Syntax OK
tux@sun # rcapache2 start
Starting httpd2 (prefork) done
tux@sun # rcapache2 status
Checking for httpd2: running
tux@sun # rcapache2 graceful
Reload httpd2 (graceful restart) done
tux@sun # rcapache2 status
Checking for httpd2: running
Un fichier de configuration incorrect peut se traduire par le démarrage incorrect d'Apache ou par son absence de démarrage. En l'absence de démarrage, il se peut qu'aucun message ne s'affiche. Consultez toujours le journal d'erreur principal pour chaque démarrage et redémarrage.