LINUX:HTTP

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

retour au menu du serveur Web


But

Sous Linux, distribution Fedora, Apache est un serveur Web bien connu principalement pour les protocoles HTTP et HTTPS. Il existe bien sûr d'autres programmes de serveur Web. Pour le volet sécurité, les certificats sont nécessaires; voyez l'article suivant.


Installation

Sous Fedora, les paquets suivants sont à installer:

  • httpd : Apache
  • mod_ssl : le module SSL pour le protocole HTTPS
  • mod_http2 : activation de la couche application HTTP/2, plus performante et sécurisée qu'HTTP/1
  • httpd-tools : divers outils Apache comme la création de mots de passe pour l'authentification Apache
  • apachetop : équivalent à la commande "top" mais axée pour Apache

avec les commandes:

dnf install httpd
dnf install mod_ssl
dnf install mod_http2


Structure des fichiers de configuration

Structure des répertoires des sites

Par défaut, le répertoire "/var/www/html" est le répertoire où on met les scripts de nos sites et le répertoire "/var/www/cgi-bin" contient les CGI.

Par contre, les applications Web qui viennent avec la distribution sont habituellement placée sous le répertoire "/usr/share" dans un répertoire portant le nom de l'application.

Nous n'allons pas utiliser l'arborescence "/var/www" dont nous désactiverons l'accès. Nous préférons placer les sources de nos sites sur un autre disque non soumis au trafic du système. Nous nommerons ce répertoire lié à un disque "/web" dans les exemples suivants. On peut aussi mettre les documents annexes plus gourmands (images, vidéo, PDF,...) sur un disque à part plus gros.

Nous n'utiliserons pas de CGI.



Test de configuration

Il est important de tester la syntaxe de nos fichiers de configuration car s'il y a une erreur, notre serveur Web sera en erreur et sera donc inaccessible. Tant que le serveur Apache n'est pas redémarré, c'est toujours l'ancienne configuration qui est active.

La commande suivante permet ce test:

httpd -t

Si tout va bien vous recevrez un message laconique:


Syntax OK


Cette commande permet d'autres actions telle la commande suivante qui affiche nos différents "Vhosts":

httpd -D DUMP_VHOSTS

D'autres peuvent vous aider comme:

httpd -D DUMP_MODULES 

qui fournit la liste des modules chargés ou

httpd -D DUMP_INCLUDES

pour visionner la hiérarchie des inclusions successives des fichiers de paramètres.

Voyez l'aide pour plus d'options:

httpd -h




Activation et lancement du service

Le service à lancer est "httpd.service". La première commande active le service pour qu'à chaque démarrage du serveur, le service se lance. La seconde lance directement le service. La troisième relance le service.

systemctl enable httpd.service
systemctl start httpd.service
systemctl restart httpd.service


Apache sous Ubuntu

Il m'est arrivé d'utiliser Apache sous Ubuntu et de rencontrer quelques problèmes.




retour au menu du serveur Web