PureWiki ist so konzipiert, dass es effizient in Standard-Webhosting-Umgebungen läuft. Du benötigst keine teuren Server oder komplexe Infrastrukturen wie Datenbanken oder Node.js.

Hinweis für Endnutzer:
Mach dir keine Sorgen um die unten aufgeführten technischen Details. PureWiki läuft auf 99 % aller Shared-Webhosting-Anbieter (wie Strato, IONOS, GoDaddy, HostGator). Die erforderlichen PHP-Einstellungen sind fast immer bereits für dich vorkonfiguriert.

Software-Voraussetzungen

PHP-Version:
8.1 oder höher ist erforderlich. Die meisten modernen Hoster bieten dies standardmäßig an oder ermöglichen den Wechsel in deinem Control Panel.

Erforderliche PHP-Erweiterungen

Webserver (Apache oder Nginx)

PureWiki verwendet einen einzigen Einstiegspunkt (index.php). Dein Webserver muss Anfragen an diese Datei weiterleiten, wenn sie nicht auf ein vorhandenes Bild oder eine vorhandene Datei verweisen.

Unter Apache übernimmt die mitgelieferte .htaccess die Rewrites und sperrt den Zugriff auf interne Pfade. Für die lokale Entwicklung startest du den integrierten PHP-Server mit php -S localhost:8000 router.php. Die router.php bildet die Rewrite-Regeln nach.

Nginx-Empfehlung

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}

# Block internal directories
location ~ ^/(config|cache|backups|purewiki/admin|purewiki/core|purewiki/api|purewiki/lang|purewiki/data|purewiki/extern|purewiki/frontend)/ {
    deny all;
    return 404;
}

# Block data files and hidden files
location ~ \.(md|json|log|sh|ini|env|bak|swp|lock)$ {
    deny all;
    return 404;
}

location ~ /\.(?!well-known).* {
    deny all;
    return 404;
}

Die Datei nginx.conf.example im PureWiki-Hauptverzeichnis enthält einen vollständigen Server-Block.

Speichererwägungen

Stelle sicher, dass der Webserver-Benutzer Lese-/Schreibberechtigungen für Verzeichnisse wie /pages, /config, /cache und /backups hat. Dies ermöglicht es dem Wiki, deine Arbeit zu speichern.