diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..654c7fc --- /dev/null +++ b/readme.md @@ -0,0 +1,255 @@ +# 🔧 Mode Maintenance Apache + +SystĂšme simple et Ă©lĂ©gant pour gĂ©rer le mode maintenance sur un serveur Apache2. + +## 📋 Table des matiĂšres + +- [Aperçu](#aperçu) +- [FonctionnalitĂ©s](#fonctionnalitĂ©s) +- [PrĂ©requis](#prĂ©requis) +- [Installation](#installation) +- [Configuration](#configuration) +- [Utilisation](#utilisation) +- [Personnalisation](#personnalisation) +- [DĂ©pannage](#dĂ©pannage) +- [Licence](#licence) + +## 🎯 Aperçu + +Ce projet fournit une solution complĂšte pour activer/dĂ©sactiver un mode maintenance sur votre site web avec : +- Une page HTML moderne et responsive +- Deux scripts bash pour automatiser le basculement +- Un design attractif avec animations + +![Maintenance Page Preview](https://via.placeholder.com/800x400/667eea/ffffff?text=Page+de+Maintenance) + +## ✹ FonctionnalitĂ©s + +- 🎹 **Design moderne** : Interface Ă©lĂ©gante avec gradient et effet glassmorphisme +- đŸ“± **Responsive** : S'adapte Ă  tous les Ă©crans (mobile, tablette, desktop) +- ⚡ **Animations fluides** : Effets visuels agrĂ©ables +- 🔄 **Scripts automatisĂ©s** : Activation/dĂ©sactivation en une commande +- ✅ **Gestion d'erreurs** : VĂ©rification Ă  chaque Ă©tape +- 🕐 **Affichage horaire** : Information claire sur la fin de maintenance + +## 📩 PrĂ©requis + +- Serveur Linux (Ubuntu/Debian recommandĂ©) +- Apache2 installĂ© et configurĂ© +- Droits sudo/root +- Site web configurĂ© dans Apache + +## 🚀 Installation + +### 1. Cloner le repository + +```bash +git clone https://github.com/votre-username/apache-maintenance-mode.git +cd apache-maintenance-mode +``` + +### 2. Copier la page de maintenance + +```bash +# CrĂ©er le rĂ©pertoire pour la page de maintenance +sudo mkdir -p /var/www/maintenance + +# Copier la page HTML +sudo cp maintenance.html /var/www/maintenance/index.html +``` + +### 3. Installer les scripts + +```bash +# Copier les scripts dans /usr/local/bin +sudo cp enable_maintenance.sh /usr/local/bin/ +sudo cp disable_maintenance.sh /usr/local/bin/ + +# Rendre les scripts exĂ©cutables +sudo chmod +x /usr/local/bin/enable_maintenance.sh +sudo chmod +x /usr/local/bin/disable_maintenance.sh +``` + +## ⚙ Configuration + +### Configuration Apache + +CrĂ©ez ou modifiez le fichier `/etc/apache2/sites-available/000-default.conf` : + +```apache + + ServerAdmin webmaster@localhost + DocumentRoot /var/www/maintenance + + + Options -Indexes +FollowSymLinks + AllowOverride None + Require all granted + + + ErrorLog ${APACHE_LOG_DIR}/maintenance_error.log + CustomLog ${APACHE_LOG_DIR}/maintenance_access.log combined + +``` + +### Modifier les scripts (optionnel) + +Si votre site principal a un nom diffĂ©rent de `nerosys.h3hitema.fr.conf`, Ă©ditez les scripts : + +```bash +sudo nano /usr/local/bin/enable_maintenance.sh +sudo nano /usr/local/bin/disable_maintenance.sh +``` + +Remplacez `nerosys.h3hitema.fr.conf` par le nom de votre fichier de configuration. + +## 🎼 Utilisation + +### Activer le mode maintenance + +```bash +sudo enable_maintenance.sh +``` + +**Sortie attendue :** +``` +🔧 Activation du mode maintenance... +✓ Site nerosys.h3hitema.fr.conf dĂ©sactivĂ© +✓ Page de maintenance activĂ©e (000-default.conf) +✓ Apache rechargĂ© avec succĂšs + +========================================== +Mode maintenance activĂ© ! +Fin prĂ©vue: 19h00 +========================================== +``` + +### DĂ©sactiver le mode maintenance + +```bash +sudo disable_maintenance.sh +``` + +**Sortie attendue :** +``` +🚀 DĂ©sactivation du mode maintenance... +✓ Site nerosys.h3hitema.fr.conf activĂ© +✓ Page de maintenance dĂ©sactivĂ©e (000-default.conf) +✓ Apache rechargĂ© avec succĂšs + +========================================== +Site remis en ligne ! +========================================== +``` + +## 🎹 Personnalisation + +### Modifier l'heure de fin + +Éditez `/var/www/maintenance/index.html` : + +```html +
19h00
+``` + +Changez `19h00` par l'heure souhaitée. + +### Personnaliser le design + +Modifiez les couleurs dans le fichier CSS : + +```css +/* Gradient de fond */ +background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + +/* Changez les couleurs selon vos préférences */ +background: linear-gradient(135deg, #FF6B6B 0%, #4ECDC4 100%); +``` + +### Changer le message + +Modifiez le texte dans la section HTML : + +```html +

Notre site est actuellement en maintenance...

+``` + +## 🐛 DĂ©pannage + +### La page de maintenance ne s'affiche pas + +```bash +# VĂ©rifier que les sites sont correctement configurĂ©s +sudo apache2ctl -S + +# VĂ©rifier les logs Apache +sudo tail -f /var/log/apache2/error.log +``` + +### Erreur "Site does not exist" + +VĂ©rifiez que vos fichiers de configuration existent : + +```bash +ls -la /etc/apache2/sites-available/ +``` + +### Erreur de permissions + +```bash +# VĂ©rifier les permissions du rĂ©pertoire +sudo chown -R www-data:www-data /var/www/maintenance +sudo chmod -R 755 /var/www/maintenance +``` + +### Apache ne recharge pas + +```bash +# Tester la configuration Apache +sudo apache2ctl configtest + +# RedĂ©marrer Apache au lieu de recharger +sudo systemctl restart apache2 +``` + +## 📝 Structure du projet + +``` +apache-maintenance-mode/ +├── README.md +├── maintenance.html # Page de maintenance +├── enable_maintenance.sh # Script d'activation +├── disable_maintenance.sh # Script de dĂ©sactivation +└── screenshots/ + └── preview.png +``` + +## đŸ€ Contribution + +Les contributions sont les bienvenues ! N'hĂ©sitez pas Ă  : + +1. Fork le projet +2. CrĂ©er une branche (`git checkout -b feature/amelioration`) +3. Commit vos changements (`git commit -m 'Ajout d'une fonctionnalitĂ©'`) +4. Push vers la branche (`git push origin feature/amelioration`) +5. Ouvrir une Pull Request + +## 📄 Licence + +Ce projet est sous licence MIT. Voir le fichier `LICENSE` pour plus de dĂ©tails. + +## đŸ‘šâ€đŸ’» Auteur + +Votre Nom - [@votre_handle](https://twitter.com/votre_handle) + +Lien du projet : [https://github.com/votre-username/apache-maintenance-mode](https://github.com/votre-username/apache-maintenance-mode) + +## 🙏 Remerciements + +- Inspiration design : [Dribbble](https://dribbble.com) +- IcĂŽnes : Emojis Unicode +- CommunautĂ© Apache + +--- + +⭐ N'oubliez pas de mettre une Ă©toile si ce projet vous a Ă©tĂ© utile ! \ No newline at end of file