Meine httpd.conf verwendet die Option MultiViews, um HTML-Dateien für URLs wiehttp://server/blogDies funktioniert einwandfrei, sofern es keine Verzeichnisse mit demselben Namen gibt. Apache versucht dann, das Verzeichnis bereitzustellen.
Gibt es eine Möglichkeit, den Vorrang von blog.html vor blog/ sicherzustellen, oder besser: Kann ich Apache dazu bringen, die Inhaltsverhandlung gemäß MultiView durchzuführen, obwohl eine passende Entität (das Verzeichnis) vorhanden ist?
In Nginx kann ich dies explizit tun:
try_files $uri $uri.html $uri/ =404;
Antwort1
Ich bin auf mod_rewrite umgestiegen. Die folgende Regel schreibt nur URLs ohne Punkt (".") um, sodass /images/image.jpeg unverändert bleibt:
RewriteRule ^/([^\.]+)$ /$1.html [L]