HTML Endung weglassen?

3 Antworten

Das kannst Du erreichen indem Du serverseitig eine entsprechende Regel einrichtest die Requests auf URLs ohne bestimmte Endungen auf die richtigen Dateien weiterleitet. Klassisch macht man das beim Einsatz von Apache als Webserver mit mod_rewrite. Hier findest Du ein Beispiel dazu:
https://unofficialwsx5.de/thread/3121-mod-rewrite-von-html-seiten-endung-entfernen/

Zusätzlich musst Du natürlich auch die Links innerhalb deiner Webseite entsprechend anpassen.

Woher ich das weiß:Berufserfahrung
Mauritan  16.11.2019, 14:54

siehe auch mein Posting. Ich finde das Link klasse per se.

Doch bei mir funktioniert es nicht.

0

Da gibt es verschiedene Wege, hier mal zwei Möglichkeiten:

Du könntest Unterordner mit den entsprechenden Namen anlegen und dort eine index.html Datei mit dem jeweiligen Inhalt rein packen.
Wird der Ordner aufgerufen und keine spezielle Datei angesprochen, rufen die meisten Webserver automatisch die Datei index.html auf, wenn diese vorhanden ist.
Man ruft also www.testseite.de/text/ auf und der Webserver öffnet www.testseite.de/text/index.html ohne dass man die html-Datei direkt ansprechen muss.

Eine andere Möglichkeit ist die Nutzung der Rewrite-Engine, welche es z.B. beim Apache-Webserver gibt.
https://de.wikipedia.org/wiki/Rewrite-Engine
Hier wird die aufgerufene Resource als Variable an z.B. ein PHP Script übergeben, welche diese auswertet und die entsprechende Seite aufruft.

.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([\w]+)/?([\w]+)? /index.php?s=$1

index.php

<?php
if(isset($_GET['s'])){
    $s = strip_tags($_GET['s']);
}else{
    $s = "";
}
switch ($s) {
    case "test":
        $body = "test.html";
        break;
    case "impressum":
        $body = "impressum.html";
        break;
    default:
        $body = "home.html";
        break;
}
include $body;
?>

Über www.testseite.de/text wird die Seite text.html eingebunden.
Über www.testseite.de/impressum wie Seite impressum.html eingebunden.
Und über www.testseite.de wie Seite home.html eingebunden.

Nein, das geht nicht.

Der Teil nach der Endung weist den Server / die Browser Deiner Besucher an, wie die binären Signale zu verarbeiten sind. Also etwa: "Interpretiere sie als Text und diesen als html".

Vereinfacht und übertrieben: ohne diese Endung wird Deine Seite zu Nullen und Einsern.

PS: Lese gerade das Link von Thready. Danke fürs Posten!

Finde ich hochinteressant. Und ist mir neu. Ja, das könnte gehen. Mit Betonung auf könnte. Denn das Link zeigt mir eine Adresse MIT *.html und dafür kann ich nirgends hinklicken auf der Site. bzw. die Klicks tun nichts. Wie auch immer es genau geht, - es scheint nicht ausgereift bzw. universal.

Woher ich das weiß:Berufserfahrung – ich arbeite schon sehr lange im EDV Bereich, viele Sparten