1. Dossiers principaux d’Apache sous Debian 13
Configuration globale
/etc/apache2/: Dossier racine de la configuration Apache.apache2.conf: Fichier de configuration principal.ports.conf: Définit les ports d’écoute (par défaut : 80 pour HTTP, 443 pour HTTPS).envvars: Variables d’environnement pour Apache.
Modules
/etc/apache2/mods-available/: Modules disponibles (non activés)./etc/apache2/mods-enabled/: Modules activés (liens symboliques vers mods-available).
Sites (Virtual Hosts)
/etc/apache2/sites-available/: Fichiers de configuration des sites disponibles (ex: 000-default.conf, default-ssl.conf)./etc/apache2/sites-enabled/: Sites activés (liens symboliques vers sites-available).
Fichiers des sites par défaut
/var/www/html/: Dossier racine par défaut pour le site principal (généralement lié à 000-default.conf).- Fichier par défaut : index.html (ou index.php si PHP est activé).
/var/www/: Dossier parent pour les autres sites (ex: /var/www/monsite/).
Logs
/var/log/apache2/:access.log: Logs des accès.error.log: Logs des erreurs.
2. Commandes pour activer/désactiver des sites
Activer un site
sudo a2ensite nom_du_site.conf
- Exemple :
sudo a2ensite mon-site.conf - Crée un lien symbolique dans sites-enabled/.
Désactiver un site
sudo a2dissite nom_du_site.conf
- Exemple :
sudo a2dissite mon-site.conf - Supprime le lien symbolique dans
sites-enabled/.
Activer un module
sudo a2enmod nom_du_module
- Exemple :
sudo a2enmod rewrite(pour activer le module rewrite).
Désactiver un module
sudo a2dismod nom_du_module
- Exemple :
sudo a2dismod cgi.
Redémarrer Apache
Après toute modification, redémarrez Apache pour appliquer les changements :
sudo systemctl restart apache2
- Vérifier la syntaxe des fichiers de configuration avant redémarrage :
sudo apache2ctl configtest
3. Fichiers de configuration par défaut
Site par défaut (HTTP)
- Fichier :
/etc/apache2/sites-available/000-default.conf - Contenu typique :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
- Dossier racine :
/var/www/html/ - Fichier par défaut :
index.html
Site par défaut (HTTPS)
- Fichier :
/etc/apache2/sites-available/default-ssl.conf - Dossier racine :
/var/www/html/(ou un autre dossier configuré). - Certificats SSL : Généralement dans
/etc/ssl/certs/et/etc/ssl/private/.
4. Exemple de workflow (flux de travail) pour ajouter un nouveau site
1 Créer un fichier de configuration dans /etc/apache2/sites-available/ :
sudo nano /etc/apache2/sites-available/monsite.conf
Exemple de contenu :
<VirtualHost *:80>
ServerName monsite.local
DocumentRoot /var/www/monsite
ErrorLog ${APACHE_LOG_DIR}/monsite_error.log
CustomLog ${APACHE_LOG_DIR}/monsite_access.log combined
</VirtualHost>
2 Créer le dossier du site :
sudo mkdir -p /var/www/monsite
sudo chown -R $USER:$USER /var/www/monsite
3 Activer le site :
sudo a2ensite monsite.conf
4 Redémarrer Apache :
sudo systemctl restart apache2
5. Résumé des commandes utiles
| Action | Commande |
|---|---|
| Activer un site | sudo a2ensite nom_du_site.conf |
| Désactiver un site | sudo a2dissite nom_du_site.conf |
| Activer un module | sudo a2enmod nom_du_module |
| Désactiver un module | sudo a2dismod nom_du_module |
| Tester la configuration | sudo apache2ctl configtest |
| Redémarrer Apache | sudo systemctl restart apache2 |
| Relancer Apache (sans redémarrage complet) | sudo systemctl reload apache2 |
| Voir l’état d’Apache | sudo systemctl status apache2 |
6. Remarques importantes
Debian 13 utilise systemd pour gérer Apache (apache2.service).
Les permissions des dossiers (/var/www/) doivent être correctement configurées pour éviter les erreurs 403 Forbidden.
Pour les sites HTTPS, assurez-vous que le module ssl est activé (sudo a2enmod ssl) et que les certificats sont configurés.