.htaccess-Generator
Aktiviere die benötigten Regelblöcke — Weiterleitungen, HTTPS, Fehlerseiten, Passwortschutz, Security-Hardening, Caching — und setze sie zu einer geordneten .htaccess-Datei zusammen. Jedes Feld wird als reiner Text gerendert, sodass nichts, was du hier eingibst, jemals ausgeführt wird.
Weiterleitungen
301-/302-URL-Weiterleitungen
Leite einen alten Pfad auf einen neuen um. Läuft vor dem Front-Controller-Catch-all, damit PHP-App-Routing diese nie verschluckt.
Schema & Host
HTTPS erzwingen & www-Kanonisierung
Eine Website sollte genau unter einem Schema und einem Host antworten. Alles andere sollte dorthin weiterleiten.
Fehler
Benutzerdefinierte Fehlerseiten
Zeige deine eigene Seite statt Apaches Standard, wenn eine Anfrage 404 liefert, verboten ist oder der Server abwürgt.
Zugriffskontrolle
Verzeichnis mit Passwort schützen
Basic Auth direkt durch Apache — ein Login-Prompt vor einem Ordner, ganz ohne Anwendungscode.
Absicherung
Security-Hardening
Kleine Direktiven, die häufige, tatsächlich ausgenutzte Fehlkonfigurationen schließen.
Performance
Kompression & Browser-Caching
Zwei unabhängige Vorteile: kleinere Antworten bei der Übertragung, und wiederkehrende Besucher überspringen den Request komplett.
Bandbreite
Hotlink-Schutz
Verhindere, dass andere Seiten deine Bilder direkt einbetten und deine Bandbreite verbrauchen, indem der Referer-Header geprüft wird.
PHP-Apps
Front-Controller-Rewrite
Leitet jede Anfrage, die keine echte Datei oder kein echter Ordner ist, an eine PHP-Datei weiter, damit der eigene Router der App entscheidet, was damit passiert.
Zusammengesetzte Datei
.htaccess
Rewrite-Regeln laufen innerhalb eines Engine-Blocks von oben nach unten, in dieser Reihenfolge:
- HTTPS erzwingen
Zusammengesetzte .htaccess
# .htaccess — composed with Wespner's .htaccess Generator
# Review before deploying: https://wespner.eu/tools
<IfModule mod_rewrite.c>
RewriteEngine On
# Force HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
# Custom error pages
ErrorDocument 404 /errors/404.html
# Block access to dotfiles (.git, .env, .htpasswd, ...)
<IfModule mod_authz_core.c>
<FilesMatch "^\.">
Require all denied
</FilesMatch>
</IfModule>
# Disable directory listing
Options -Indexes
# Disable the Apache version banner on error pages
ServerSignature Off
Auf nginx? .htaccess bewirkt nichts.
Betreibst du einen eigenen Gameserver?
Wespner-Gameserver mit DDoS-Schutz, NVMe-Laufwerken und Aktivierung innerhalb von Minuten.