Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

NUR die index.php weiterleiten

Mehrere Domains, Domain-Umzug, neue Dateinamen, 301/302
Neues Thema Antworten
Halli
PostRank 7
PostRank 7
Beiträge: 584
Registriert: 21.08.2003, 00:40
Wohnort: Hannover

Beitrag von Halli » 26.10.2009, 16:28

ich versuche gerade, die passendem mod-rewrite Regeln für die htaccess zu finden, wenn ich NUR die index.php OHNE angehängte Parameter weiterleiten will, also:

1. www.example.com/index.php soll weitergeleitet werden zu www.example.com
2. www.example.com/index.php?par1=wert1 soll nicht weitergeleitet werden.

Ich will also NUR den Aufruf der Startseite ohne angehängte Parameter des CMS wieder auf die Domains selbst umleiten.

Bisher hab ich die Lösung nicht finden können, denn bei meinen bisherigen Versuchen wurde entweder nichts weitergeleitet oder der 2. Aufruf landete bei www.example.com/?par1=wert1.

Anzeige von ABAKUS

von Anzeige von ABAKUS »

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

Jetzt anfragen: 0511 / 300325-0.


TBT
PostRank 5
PostRank 5
Beiträge: 306
Registriert: 13.02.2008, 16:11

Beitrag von TBT » 26.10.2009, 17:12

# index. ... etc immer nach / leiten wenn KEINE Parameter anhängen
RewriteCond %{REQUEST_URI} ^/index\.(php|htm|html)$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ / [L,R=301]

Kannste bestimmt abwandeln ;)

Halli
PostRank 7
PostRank 7
Beiträge: 584
Registriert: 21.08.2003, 00:40
Wohnort: Hannover

Beitrag von Halli » 29.10.2009, 17:02

Vielen Dank! Klappt prima.

hanszucker
PostRank 1
PostRank 1
Beiträge: 1
Registriert: 24.11.2011, 20:24

Beitrag von hanszucker » 24.11.2011, 20:35

Entschuldigt dass ich so einen alten Beitrag hervorkrame aber ich habe nun ein ähnliches Problem und komme als mod_rewrite und regular expressions - Anfänger einfach nicht mehr weiter und hoffe hier eine Lösung zu finden.

Ich möchte auch eine www.example.com/index.php auf www.example.com/ weiterleiten.

Jedoch gibt es in dem zu verwendenden CMS auch die URL www.example.com/index.php? (also nur ein Fragezeichen am Ende und kein ganzer Querystring a la ?foo=bar)

Diese URL darf nicht umgeleitet werden!

Setze ich nun den Code wie in diesem Breitag beschrieben ein, dann wird mir auch diese index.php? weitergeleitet.

Ich hoffe, mir kann hier jemand helfen und eine mod_rewrite-Regel geben, damit diese index.php? nicht weitergeleitet wird.

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 26.11.2011, 12:45

hanszucker hat geschrieben:Jedoch gibt es in dem zu verwendenden CMS auch die URL www. example.com/index.php? (also nur ein Fragezeichen am Ende und kein ganzer Querystring a la ?foo=bar)

Diese URL darf nicht umgeleitet werden!
Wenn es sich um eine überschaubare Anzahl von Parametern handelt, könnte abgefragt werden, ob einer dieser Parameter im QueryString enthalten ist. Im Beispiel werden die ersten beiden ohne Übergabe des Querys zu http:// localhost/ umgeleitet:

http:// localhost/demoshop/demo.php?literatur=4
http:// localhost/demoshop/demo.php?software=2

Und diese beiden werden nicht zu http:// localhost/ umgeleitet:

http:// localhost/demoshop/demo.php?
http:// localhost/demoshop/demo.php

Code: Alles auswählen

RewriteCond %{REQUEST_URI} ^/demoshop/demo\.php$
RewriteCond %{QUERY_STRING} ^(literatur|software)(.*)$ [NC] 
RewriteRule ^(.*)$ /? [L,R=301]
Somit könnte das Beispiel für Deine Belange etwa wie folgt abgeändert werden:

Code: Alles auswählen

RewriteCond %{REQUEST_URI} ^/index\.php$
RewriteCond %{QUERY_STRING} ^(Parameter1|Parameter2|Parameter3)(.*)$ [NC] 
RewriteRule ^(.*)$ /? [L,R=301]
Der ersten Zeile bedarf es eigentlich nicht zwingend, es sollte sich auch so schreiben lassen:

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^(Parameter1|Parameter2|Parameter3)(.*)$ [NC] 
RewriteRule ^index \.php$ /? [L,R=301]
Wenn die Parameter mit übernommen werden sollen, dann in der letzten Zeile das ? Fragezeichen gegen $1 austauschen, womit dann nur noch die letzte Zeile erforderlich wäre.

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag