« Le système d'exploitation GNU-Linux/Le serveur Web Apache » : différence entre les versions

Contenu supprimé Contenu ajouté
m petite correction
rajout des .htaccess
Ligne 30 :
# Pour que Apache ne donne pas son numéro de version et les modules chargés
'''ServerSignature off'''
 
 
# Permet d'enregistrer les noms canoniques au lieu des adresses IP
# dans le fichier access.log
'''HostnameLookups On'''
 
 
Le fichier '''/etc/apache2/ports.conf''' contient la liste des ports sur lequel Apache écoute. On peut changer le port le par défaut (80), ou lui indiquer d'écouter sur d'autres ports (ex: 443 pour https) en rajoutant des lignes '''Listen <port>'''.
Ligne 41 ⟶ 39 :
# cat /etc/apache2/ports.conf
Listen 80
 
=== Héberger plusieurs sites Internet ===
 
Apache permet de gérer plusieurs sites internet sur le même serveur, pour cela on va utiliser des sections '''VirtualHost'''. Pour chaque site Internet, on crée un nouveau fichier dans '''/etc/apache2/sites-enabled''' et on lui indique la section VirtualHost (voir ci-dessous). Par convention, on appelle ce fichier avec le nom du site Internet :
Ligne 78 :
 
Dans cet exemple, il faut bien entendu que '''www.mondomaine.fr''' pingue vers notre serveur. On peut simuler ceci en rajoutant une entrée dans le fichier '''/etc/hosts''' ou en modifiant le DNS.
 
=== Protéger un répertoire avec un login / mot de passe ===
 
Pour protéger un répertoire avec un login et un mot de passe, on crée dans le répertoire à protéger un fichier '''.htaccess''' qui contient le code suivant :
 
# cd /var/www/www.mondomaine.fr
# vi .htaccess
# Type d'authentification
AuthType Basic
# Nom affiché dans la boite d'authentification
AuthName "Site personnel"
# Emplacement du fichier contenant les utilisateurs
AuthUserFile /etc/apache2/utilisateurs
# Emplacement du fichier contenant les groupes
AuthGroupFile /etc/apache2/groupes
# On autorise seulement les membres du groupe admin
Require Group admin
 
On crée ensuite le fichier '''/etc/apache2/utilisateurs''' à l'aide de la commande '''htpasswd''' :
 
# cd /etc/apache2
# htpasswd -c utilisateurs alex
...
# htpasswd utilisateurs pierre
 
La première fois, on utilise l'option '''-c''' de la commande '''htpasswd''' pour créer le fichier.
 
On crée ensuite le fichier '''/etc/apache2/groupes''' :
 
# echo "admin: alex pierre" > /etc/apache2/groupes
 
On relance le serveur web :
 
# /etc/init.d/apache2 restart