Seite 1 von 1

index.html auf root bzw. Startseite 301 weiterleiten

Verfasst: 18.12.2012, 13:09
von a priori
Ich möchte die index.html auf die Startseite weiterleiten. Also www.domain.de/index.html nach www.domain.de/

Ausprobiert habe ich bereits die folgenden Codes in der .htaccess aber leider ohne Erfolg:

Code: Alles auswählen

RewriteCond %{THE_REQUEST} ^[A-Z]+\ /index\.html
RewriteRule ^index\.html/?(.*) /$1? [L,R=301]

Code: Alles auswählen

Redirect 301 /index.html http://www.domain.de/
Meine .htaccess enthält aktuell nur den von Wordpress generierten Code:

Code: Alles auswählen

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - &#91;L&#93;
RewriteCond %&#123;REQUEST_FILENAME&#125; !-f
RewriteCond %&#123;REQUEST_FILENAME&#125; !-d
RewriteRule . /index.php &#91;L&#93;
</IfModule>

# END WordPress

Verfasst:
von

Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Verfasst: 18.12.2012, 14:09
von bbnetch
wer sucht der findet...
htaccess:
https://www.abakus-internet-marketing.d ... 58522.html

oder:

Code: Alles auswählen

<?php

header&#40;"Location&#58; /deinordner/index.html"&#41;;

?>
im uebrigen spielt das keine rolle.
google wertet das nicht als dc

Verfasst: 18.12.2012, 14:37
von a priori
@bbnetch

Danke für deine Antwort. Leider funktioniert auch dieser Code nicht:

Code: Alles auswählen

RewriteCond %&#123;THE_REQUEST&#125; ^&#91;A-Z&#93;&#123;3,9&#125;\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http&#58;//www.meine-domain.de/ &#91;R=301,L&#93;
Ich habe von einem Bekannten eine Domain übernommen und die index.html hat halt auch einige eingehende Links.

Was außerdem für mich interessant wäre:

Ist es möglich URLs die eins dieser Wörter (pagesetter, downloads, viewtopic) beinhalten 301 auf die Startseite weiterzuleiten?

Also eine Regel, die gleich eine Vielzahl von Urls abfängt und weiterleitet.

Verfasst:
von

Re: index.html auf root bzw. Startseite 301 weiterleiten

Verfasst: 18.12.2012, 16:00
von Melegrian
a priori hat geschrieben:

Code: Alles auswählen

RewriteCond %&#123;THE_REQUEST&#125; ^&#91;A-Z&#93;+\ /index\.html
RewriteRule ^index\.html/?&#40;.*&#41; /$1? &#91;L,R=301&#93;
Verstehe Deine bisherigen Beispiele nicht ganz. Wofür ist der Backslash hinter [A-Z]+ gedacht? Wenn doch mit der Rule nur ^index\.html umgeleitet werden soll, warum das dann noch einmal als Kondition notieren?

Erste Regel für den Normalfall, also "www.domain.de/index.html" nach "www.domain.de/".

Code: Alles auswählen

RewriteRule ^index\.html$ /? &#91;L,R=301&#93;
Erste Regel für Dein Beispiel

Code: Alles auswählen

RewriteRule ^index\.html/?&#40;.*&#41; /$1? &#91;L,R=301&#93;
würde dann "www.domain.de/index.html/?ein-string-oder-so" nach "www.domain.de/?ein-string-oder-so" meiner Meinung nach auch nicht richtig umleiten, weil ja "ein-string-oder-so" durch ? eigentlich wieder eliminiert werden sollte oder irgendwie verworren zumindest. ? leitet ja eigentlich, falls nicht als Frage für einen Ausdruck benutzt, einen QueryString ein und der lässt sich so eigentlich nicht übernehmen, zumal ja nach /$1? kein QueryString mehr folgen soll. Was soll nun html/? Bedeuten? Ob ein Slash hinter html vorhanden ist oder nicht? Habe es jetzt aber nicht getestet, erscheint mir nur etwas merkwürdig. Würde die Regel auch nicht verwenden, wenn Du da nichts Spezielles mit vorhast.

Für Deine zweite Frage, das könnte etwa so aussehen:

Code: Alles auswählen

RewriteRule ^&#40;.*&#41;&#40;pagesetter|downloads|viewtopic&#41;&#40;.*&#41;$ /? &#91;L,R=301&#93;
Dann müsstest Du mal schauen, ob das unter oder über den bestehenden Regel eingefügt werden muss, wahrscheinlich unter, denke ich zumindest augenblicklich.

Alles ungetestet!

Und da es sich um WP handelt, wenn das bisher alles über die index lief, dann solltest Du Dich da doch wohl erst einmal belesen, ob es da nicht interne Lösungen für Umstellungen und Einrichten gibt, bevor da Krautsalat draus wird.

Re: index.html auf root bzw. Startseite 301 weiterleiten

Verfasst: 18.12.2012, 20:34
von a priori
Melegrian hat geschrieben:Verstehe Deine bisherigen Beispiele nicht ganz.
Die hab ich hier im Forum gefunden. Ich habe das nicht hinterfragt, da ich mich damit so gut wie überhaupt nicht auskenne.

Deine Codes haben auf jeden Fall funktioniert. Vielen Dank! Die Reihenfolge kann in der Tat eine ganz entscheidene Rolle spielen. Das vergesse ich hin und wieder mal.

Was nicht funktioniert hat sind URLs, die mit einem Fragezeichen direkt nach dem Slash beginnen:

Zum Beispiel: www.domain.de/?module=pnForum&func=viewtopic&topic=23

Hast du noch ne Idee?

Re: index.html auf root bzw. Startseite 301 weiterleiten

Verfasst: 18.12.2012, 21:07
von Melegrian
a priori hat geschrieben:Hast du noch ne Idee?
Wenn nur der QuryString abgehängt werden soll, dazu hatte ich hier mal weiter unten auf der Seite einige Varianten geschrieben:

https://www.abakus-internet-marketing.d ... 13536.html

Also, mit den Vorgaben von weiter oben etwa so:

Code: Alles auswählen

RewriteCond %&#123;QUERY_STRING&#125; ^&#40;.*&#41;&#40;pagesetter|downloads|viewtopic&#41;&#40;.*&#41;$
RewriteRule .* /? &#91;L,R=301&#93;
Für die Rule könntest Du Dir aber auch eine andere Regel von den Beispielen aussuchen.

Verfasst: 19.12.2012, 11:00
von a priori
Hammer. Vielen Dank. Das funktioniert!

Ich habe versucht eine Sub-Domain zur Hauptdomain weiter zu leiten. Dazu habe ich die Sub-Domain angelegt und in das Verzeichnis /download weitergeleitet. Im Verzeichnis download liegt aktuell eine .htaccess mit folgendem Inhalt:

Code: Alles auswählen

RewriteEngine On
RewriteCond %&#123;HTTP_HOST&#125; ^download\.domain\.de$ &#91;NC&#93;
RewriteRule ^&#40;.*&#41; http&#58;//www.domain.de/ &#91;L,R=301&#93; 
Leider funktioniert das nicht...

Verfasst: 19.12.2012, 17:03
von Melegrian
a priori hat geschrieben:

Code: Alles auswählen

RewriteEngine On
RewriteCond %&#123;HTTP_HOST&#125; ^download\.domain\.de$ &#91;NC&#93;
RewriteRule ^&#40;.*&#41; http&#58;//www.domain.de/ &#91;L,R=301&#93; 
Leider funktioniert das nicht...
Erkenne keinen richtigen Fehler. Eventuell mal das Muster mit $ beenden, also so:

Code: Alles auswählen

RewriteCond %&#123;HTTP_HOST&#125; ^download\.domain\.de$ &#91;NC&#93;
RewriteRule ^&#40;.*&#41;$ http&#58;//www.domain.de/$1 &#91;L,R=301&#93;
Kann mir nur schlecht vorstellen, dass es einzig daran liegen sollte.