Files
mode_maintenance/readme.md
2025-10-24 05:57:21 +00:00

252 lines
5.9 KiB
Markdown

# 🔧 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://git.tuxtech.fr/tuxgyver/mode_maintenance.git
cd mode_maintenance.
```
### 2. Copier la page de maintenance
```bash
# Créer le répertoire pour la page de maintenance
mkdir -p /var/www/maintenance
# Copier la page HTML
cp maintenance.html /var/www/maintenance/index.html
```
### 3. Installer les scripts
```bash
# Copier les scripts dans /usr/local/bin
cp enable_maintenance.sh /usr/local/bin/
cp disable_maintenance.sh /usr/local/bin/
# Rendre les scripts exécutables
chmod +x /usr/local/bin/enable_maintenance.sh
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
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/maintenance
<Directory /var/www/maintenance>
Options -Indexes +FollowSymLinks
AllowOverride None
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/maintenance_error.log
CustomLog ${APACHE_LOG_DIR}/maintenance_access.log combined
</VirtualHost>
```
### Modifier les scripts (optionnel)
Si votre site principal a un nom différent de `nerosys.h3hitema.fr.conf`, éditez les scripts :
```bash
nano /usr/local/bin/enable_maintenance.sh
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
<div class="time">19h00</div>
```
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
<p>Notre site est actuellement en maintenance...</p>
```
## 🐛 Dépannage
### La page de maintenance ne s'affiche pas
```bash
# Vérifier que les sites sont correctement configurés
apache2ctl -S
# Vérifier les logs Apache
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
chown -R www-data:www-data /var/www/maintenance
chmod -R 755 /var/www/maintenance
```
### Apache ne recharge pas
```bash
# Tester la configuration Apache
apache2ctl configtest
# Redémarrer Apache au lieu de recharger
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
tuxgyver -
Lien du projet : [https://git.tuxtech.fr/tuxgyver/mode_maintenance.git](https://git.tuxtech.fr/tuxgyver/mode_maintenance.git)
## 🙏 Remerciements
- Inspiration design : [Dribbble](https://dribbble.com)
- Icônes : Emojis Unicode
- Communauté Apache