Unterseite ohne .html mit htaccess realisieren
Author: Jörn D.
Visited 3562,
Followers 1,
Shared 0
Moin!
Ich habe eine Downloadseite vorbereitet zu der ein Login erforderlich ist.
Die Loginadresszeile wird so angezeigt:
Ich möchte nun, dass meine Kunden das ".html" nicht mit eingeben müssen.
Ich habe schon gelesen, dass hierfür eine htaccess geschrieben werden muss.
Jetzt die drei großen Fragen:
- Kann mir jemand helfen?
- Wie muss die htaccess heißen?
- Wie bekomme ich die Datei auf meinen Server?
Beste Grüße aus Hessen
Jörn Dutz
Posted on the
Hier sind einige Beispiele wie eine htaccess-Datei aufgebaut wird (Hier würde die 301 Weiterleitung eventuell Sinn machen):
https://www.webhosting-franken.de/mod_rewrite-benutzen-ein-paar-beispiele/
Online htaccess-Generator:
https://www.htaccessredirect.net/
Übertragen kannst Du die Datei auf deinen Server (Root-Verzeichnis) z.B. mit Filezilla
https://filezilla-project.org/
Author
Hallo Martin,
vielen Dank für die schnelle Rückmeldung.
Ich denke ich habe bei dem wehosting-franken die richtige Lösung gefunden.
"Dateien mit einer bestimmten Endung (.html, .php) auf simulierten Ordner umleiten"
Leider komme mit dem Code nicht weiter...
RewriteEngine On RewriteRule ^(.*)/([^.]+)/$ /$1/$2.html?rw=1 [QSA,L]
RewriteCond %{QUERY_STRING} !^rw=1
RewriteRule ^(.*)/([^.]+).html$ /$1/$2/ [R=301,L]
Hast Du eine Idee wo ich da jetzt meine Ergänzunegn (www.----/login.html usf www.---/login umleiten)
eingeben muss?
Viele Grüße
Jörn Dutz
Wie du oben schon schräg geschrieben hast, wird die Seite auf einen ORdner umgeleitet und nicht auf die Seite.
MAn kann das "html" nicht ausblenden, denn ansonsten findet er die Seite nicht. Bei Joomla wird was anders gelöst, weil es php Seiten sind.
Author
Hallo Andreas,
auf der Seite LINK wird vom Autor im folgetext geschrieben
"...soll die Endung .html entfernt bzw. auf den Unterordner geleitet werden..."
Aus dem Grund denke ich, dass das möglich sein sollte.
Ich suche jetzt nur nach dem richtigen Weg
Die besten Grüße!
Jörn Dutz
Hallo Jörn, dieser Code für die htaccess-Datei müsste gehen:
Wenn Du im Browser https://www.brandschutzfachberatung.de/login eingibst, müsstest Du nach https://www.brandschutzfachberatung.de/login.html geleitet werden.
RewriteEngine on
Options -MultiViews
RewriteRule ^([^./]+)$ /$1.html [L,R=301]
RewriteCond %{REQUEST_URI} ^/login$
RewriteRule ^login$ https://www.brandschutzfachberatung.de/login.html [R=301,L]
Erstellen kannst Du die Datei z.B. mit dem Editor von Windows.
Den obigen Code in das Textdokument kopieren und dann dieses Speichern als mit der Auswahl "Alle Dateien" und "ANSI". Name der Datei: .htaccess
Author
Hallo Martin,
klasse, das probiere ich aus und gebe Rückmeldung!
Author
Hallo Martin,
vielleicht hast Du noch zu folgendem eine Idee :-)
Ich habe bereits eine .htaccess für die Umleitung von http auf https.
RewriteEngine On
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://www.brandschutzfachberatung.de/$1 [R=301,L]
Wenn ich jetzt deine Zeilen einfach dazukopiere meldet mir das System einen Scriptfehler.
Viele Grüße
Jörn
Würde ich dann als Redirect ausführen z.b. so:
Redirect 301 /login https://www.brandschutzfachberatung/login.html
Author
Ok,
wir nähern uns der Lösung.
Kein Scriptfehler mehr.
Jetzt reagiert nur der Server nicht auf den Aufruf.
Ich habe eine interessante Seite gefunden...
https://htaccess.madewithlove.be/
Die gibt folgende Auskunft:
Versuch mal das:
<Ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://www.brandschutzfachberatung.de/$1 [R=301,L]
</Ifmodule>
Redirect 301 /login https://www.brandschutzfachberatung/login.html
Eventuell auch so:
<Ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://www.brandschutzfachberatung.de/$1 [R=301,L]
</Ifmodule>
#Options +FollowSymlinks
Redirect 301 /login https://www.brandschutzfachberatung/login.html
Options -Indexes
Ich sehe gerade das .de vergessen wurde! Trage es bitte ein (auch bei einem ersten Beispiel). Vielleicht lag es daran?
Author
Es klappt!!!
Diese Lösung wars:
RewriteEngine On
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://www.brandschutzfachberatung.de/$1 [R=301,L]
Redirect 301 /login https://www.brandschutzfachberatung.de/login.html
Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke! Danke!