#!/bin/bash # Skript zum Aktualisieren der Apache-Konfiguration für tt-tagebuch.de # Führt automatisch ein Backup durch und aktualisiert beide Konfigurationsdateien HTTP_CONFIG_FILE="/etc/apache2/sites-available/tt-tagebuch.de.conf" HTTPS_CONFIG_FILE="/etc/apache2/sites-available/tt-tagebuch.de-le-ssl.conf" HTTP_BACKUP_FILE="/etc/apache2/sites-available/tt-tagebuch.de.conf.backup.$(date +%Y%m%d_%H%M%S)" HTTPS_BACKUP_FILE="/etc/apache2/sites-available/tt-tagebuch.de-le-ssl.conf.backup.$(date +%Y%m%d_%H%M%S)" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" HTTP_EXAMPLE="${SCRIPT_DIR}/apache-http.conf.example" HTTPS_EXAMPLE="${SCRIPT_DIR}/apache-https.conf.example" echo "=== Apache-Konfiguration aktualisieren ===" echo "" # Backup und Update HTTP-Konfiguration if [ -f "$HTTP_CONFIG_FILE" ]; then echo "✓ Bestehende HTTP-Konfiguration gefunden: $HTTP_CONFIG_FILE" echo " Erstelle Backup: $HTTP_BACKUP_FILE" sudo cp "$HTTP_CONFIG_FILE" "$HTTP_BACKUP_FILE" echo " ✓ Backup erstellt" else echo "⚠ HTTP-Konfigurationsdatei nicht gefunden: $HTTP_CONFIG_FILE" echo " Erstelle neue Konfigurationsdatei" fi echo "" echo "Aktualisiere HTTP-Konfiguration aus: $HTTP_EXAMPLE" sudo cp "$HTTP_EXAMPLE" "$HTTP_CONFIG_FILE" echo "✓ HTTP-Konfiguration aktualisiert" # Backup und Update HTTPS-Konfiguration if [ -f "$HTTPS_CONFIG_FILE" ]; then echo "" echo "✓ Bestehende HTTPS-Konfiguration gefunden: $HTTPS_CONFIG_FILE" echo " Erstelle Backup: $HTTPS_BACKUP_FILE" sudo cp "$HTTPS_CONFIG_FILE" "$HTTPS_BACKUP_FILE" echo " ✓ Backup erstellt" else echo "" echo "⚠ HTTPS-Konfigurationsdatei nicht gefunden: $HTTPS_CONFIG_FILE" echo " Erstelle neue Konfigurationsdatei" fi echo "" echo "Aktualisiere HTTPS-Konfiguration aus: $HTTPS_EXAMPLE" sudo cp "$HTTPS_EXAMPLE" "$HTTPS_CONFIG_FILE" echo "✓ HTTPS-Konfiguration aktualisiert" # Prüfe Syntax echo "" echo "Prüfe Apache-Konfigurationssyntax..." if sudo apache2ctl configtest; then echo "✓ Syntax ist korrekt" echo "" echo "=== Nächste Schritte ===" echo "1. Konfigurationen aktivieren (falls noch nicht aktiv):" echo " sudo a2ensite tt-tagebuch.de.conf" echo " sudo a2ensite tt-tagebuch.de-le-ssl.conf" echo "" echo "2. Apache neu starten:" echo " sudo systemctl restart apache2" echo "" echo "3. Testen:" echo " curl -I http://www.tt-tagebuch.de" echo " curl -I http://tt-tagebuch.de" echo " curl -I https://www.tt-tagebuch.de" echo " (Alle sollten auf https://tt-tagebuch.de weiterleiten)" else echo "✗ Syntax-Fehler gefunden! Bitte manuell prüfen." exit 1 fi