Seite 1 von 1

Mod Rewrite

Verfasst: 25.08.2010, 12:22
von Alexander123
Hallo,

folgendes Problem!

Ich möchte per .htaccess und mod_rewrite folgende Umleitung vornehmen

von

domain.com/Ordner1/

auf

domain.com/Ordner1/index.html


also dauerhaft für alle Anfragen welche direkt auf den Ordner linken, sollen direkt per 301 auf die index.html weitergeleitet werden. So dass man den Ordner (keinen ORDNER unter der Domain) nicht mehr direkt aufrufen kann.

So ist es ja der umgekehrte Fall das von index.html auf den Ordner gelinkt wird.

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.html\ HTTP/
RewriteRule ^(([^/]+/)*)index\.html$ 1http://domain.com/$1 [R=301,L]

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 25.08.2010, 12:58
von Synonym
RewriteRule (.+)/$ /$1/index.html [R=301,L]

ungetestet

Verfasst: 25.08.2010, 13:01
von Alexander123
Nein, das war es nicht ;)

Verfasst: 25.08.2010, 13:09
von Synonym
Hm, war auch nur ein Schnellversuch im Sinne von

Irgendwelche_Zeichen gefolgt von einem abschließenden / weiterleiten an /irgendwelche_Zeichen/index.html

Was passiert denn? Eine Fehlermeldung? Das ganze war auch ohne die RewriteCond gedacht, also nur die Rule.

P.S. Hab es eben bei mir getestet und aus domain.de/ordner1/ wird domain.de/ordner1/index.html bei mir geht es so also.

Verfasst: 25.08.2010, 13:16
von Alexander123
Nein, da tut sich nix. Also ich kann den Ordner immer noch direkt aufrufen.

Verfasst: 25.08.2010, 13:17
von Synonym
Was steht denn in der htaccess alles drinnen?

Bei mir geht das mit Ordner und mit Ordner + Unterordner... z.B.

https://1nt.de/ordner1/
https://1nt.de/ordner1/ordner2/

und die htaccess besteht nur aus

Code: Alles auswählen

RewriteEngine On
RewriteRule (.+)/$ /$1/index.html [R=301,L]

Verfasst: 25.08.2010, 13:28
von Alexander123
Bei mir steht das drin und es kommt zu einer Fehlermeldung. Seite kann nicht angezeigt werden.

RewriteCond %{HTTP_HOST} ^domain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.domain-domain.com$
RewriteRule ^/?$ "http\:\/\/domain\.com" [R=301,L]

Verfasst: 25.08.2010, 13:32
von Synonym
Ja ist ja auch logisch.

Wenn der Host domain.com ODER www.domain-domain.com ist, dann soll er weiterleiten an domain.com.

Wenn die Weiterleitung erfolgt ist, dann greift die erste Cond wieder.... Wo soll da denn der Sinn sein. Der hört die Weiterleitung so ja nie auf.

Die Weiterleitung für die Ordner fehlt da aber auch komplett.

Die Anführungszeichen bei der Rule haben da auch nichts zu suchen.
es kommt zu einer Fehlermeldung
Und wie lautet die?

Verfasst: 25.08.2010, 13:45
von Alexander123
Also so geht es :

RewriteCond %{HTTP_HOST} ^www.domain.com
RewriteRule (.*) https://domain.com/$1 [R=301,L]
RewriteRule (.+)/$ /$1/index.html [R=301,L]

:)