===== Voraussetzungen =====
- Debian-Server mit Root-Zugriff oder einem Benutzer mit `sudo`-Rechten. - Internetverbindung für das Herunterladen der Pakete.
==== Schritt-für-Schritt-Anleitung ====
=== 1. System aktualisieren ===
Aktualisiere zunächst die Paketlisten und installiere verfügbare Updates:
$> sudo apt update sudo apt upgrade -y
=== 2. Apache2 Webserver installieren ===
Installiere den Apache2-Webserver:
$> sudo apt install apache2 -y
Überprüfung:
- Öffne einen Webbrowser und navigiere zu `http://deine_server_ip`. Du solltest die Apache2-Standardseite sehen.
=== 3. PHP und benötigte Module installieren ===
Installiere PHP sowie die Module für MariaDB und SQLite3:
$> sudo apt install php libapache2-mod-php php-mysql php-sqlite3 -y
und das Apache2-Modul aktivieren
$> sudo a2enmod php8.2
$> sudo systemctl restart apache2
Überprüfung:
- Erstelle eine PHP-Info-Datei:
$>
echo "" | sudo tee /var/www/html/info.php
- Rufe `http://deine_server_ip/info.php` im Browser auf. Die PHP-Informationsseite sollte angezeigt werden.
Wichtig: Lösche die `info.php`-Datei nach der Überprüfung aus Sicherheitsgründen:
$> sudo rm /var/www/html/info.php
=== 4. MariaDB installieren ===
Installiere den MariaDB-Datenbankserver:
$> sudo apt install mariadb-server mariadb-client -y
Sicherheitseinrichtung:
Führe das Sicherheitskonfigurationsskript aus:
$> sudo mysql_secure_installation
Während der Einrichtung:
- Setze ein root-Passwort. - Entferne anonyme Benutzer. - Verbiete den Root-Login über das Netzwerk. - Entferne die Testdatenbank. - Lade die Berechtigungstabellen neu.
=== 5. SQLite3 installieren ===
Falls nicht bereits durch PHP installiert, installiere SQLite3:
$> sudo apt install sqlite3 -y
=== 6. Apache2 neu starten ===
Starte Apache2 neu, um die Änderungen zu übernehmen:
$> sudo systemctl restart apache2
=== 7. Firewall konfigurieren (optional) ===
Erlaube HTTP- und HTTPS-Verkehr, wenn eine Firewall aktiv ist:
$> sudo ufw allow in „Apache Full“
=== 8. Zusätzliche PHP-Module installieren (optional) ===
Je nach Bedarf können weitere PHP-Module installiert werden:
$> sudo apt install php-curl php-gd php-zip php-xml php-mbstring -y
Starte Apache2 nach der Installation neu:
$> sudo systemctl restart apache2
==== (Optional) Web-Verzeichnis als Unterverzeichnis eines vorhandenen Nutzers ====
Das gewünschte Verzeichnis anlegen und Rechte zuteilen:
sudo mkdir /home/user/www
sudo chown -R www-data:www-data /home/user/www
sudo chmod -R 755 /home/user/www
Apache-Konfiguration überprüfen:
sudo nano /etc/apache2/sites-available/000-default.conf
und folgenden Inhalt dort einstellen:
DocumentRoot /home/user/www
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Danach Apache2 neu laden
sudo systemctl restart apache2
Überprüfen der Benutzerberechtigungen im home-Verzeichnis
sudo chmod 755 /home/su0359
Jetzt sollte die Seite aufrufbar sein.