Un gestionnaire Apache VirtualHost cross-platform écrit en Rust, fonctionnant sur Debian/Ubuntu, Windows 11, et autres systèmes Unix.
- ✅ Création de VirtualHosts avec configuration automatique
- ✅ Gestion des sites (enable/disable/list/delete)
- ✅ Support multi-plateforme (Linux/Windows)
- ✅ Détection automatique du système d'exploitation
- ✅ Support PHP (optionnel)
- ✅ Support SSL (optionnel)
- ✅ Interface CLI moderne et colorée
- ✅ Sécurité intégrée (vérification des permissions)
# Installer Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Installer Apache (si pas déjà installé)
sudo apt-get update
sudo apt-get install apache2
# Installer les dépendances de développement
sudo apt-get install build-essential- Installer Rust
- Installer Apache HTTP Server (ou utiliser XAMPP/WAMP)
- Installer Visual Studio Build Tools (pour la compilation)
# Cloner le repository
git clone <repository-url>
cd apache-manager
# Compiler le projet
cargo build --release
# Installer globalement (optionnel)
cargo install --path .Le binaire sera disponible dans target/release/apache-manager (ou apache-manager.exe sur Windows).
# Création basique
apache-manager create example.com
# Avec options personnalisées
apache-manager create example.com \
--root /var/www/example \
--php 8.3 \
--alias www.example.com \
--port 80 \
--ssl
# Créer sans activer automatiquement
apache-manager create example.com --no-enableapache-manager listapache-manager enable example.com
apache-manager disable example.com# Avec confirmation
apache-manager delete example.com
# Sans confirmation (force)
apache-manager delete example.com --forceapache-manager reloadapache-manager statusPar défaut, Apache Manager utilise :
- Sites disponibles :
/etc/apache2/sites-available - Sites activés :
/etc/apache2/sites-enabled - Logs :
/var/log/apache2 - Document root par défaut :
/var/www/{domain}
Par défaut, Apache Manager cherche Apache dans :
C:\Program Files\Apache24ouC:\Program Files\Apache2.4
Les chemins sont automatiquement détectés et créés si nécessaire.
Certaines opérations nécessitent des privilèges root :
# Utiliser sudo
sudo apache-manager create example.com
# Ou exécuter en tant que root
sudo su
apache-manager create example.comSur Windows, exécutez l'invite de commande en tant qu'administrateur pour les opérations nécessitant des privilèges élevés.
/etc/apache2/sites-available/example.com.conf # Configuration VirtualHost
/etc/apache2/sites-enabled/example.com.conf # Lien symbolique (Linux)
/var/www/example.com/ # Document root
/var/www/example.com/index.html # Page par défaut
sudo apache-manager create mysite.com \
--root /var/www/mysite \
--php 8.3 \
--alias www.mysite.comsudo apache-manager create secure-site.com \
--root /var/www/secure \
--sslNote : Vous devrez configurer les certificats SSL manuellement après la création.
# 1. Créer le site
sudo apache-manager create example.com
# 2. Vérifier qu'il est activé
apache-manager list
# 3. Si besoin, recharger Apache
sudo apache-manager reload
# 4. Vérifier le statut
apache-manager statusLinux : Utilisez sudo pour les opérations nécessitant des privilèges root.
Windows : Exécutez l'invite de commande en tant qu'administrateur.
Vérifiez que le service Apache est en cours d'exécution :
# Linux
sudo systemctl status apache2
# Windows
sc query Apache2.4Vérifiez que le site existe dans sites-available :
apache-manager list- Sur Windows, les liens symboliques peuvent nécessiter des privilèges administrateur
- La configuration SSL nécessite une configuration manuelle des certificats
- Le support PHP sur Windows peut nécessiter une configuration supplémentaire
Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou une pull request.
MIT License - Voir le fichier LICENSE pour plus de détails.
Construit avec ❤️ en Rust pour une gestion Apache moderne et cross-platform.