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

mod_rewrite: Trailing ?

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
Hube
PostRank 1
PostRank 1
Beiträge: 11
Registriert: 25.09.2008, 09:54

Beitrag von Hube » 06.10.2008, 10:58

Hallo zusammen,
ich habe folgendes Problemchen:

Aus "historischen Gründen" habe ich eingehende Links der Form

https://DOMAIN/index.html
https://DOMAIN/index.html?

Diese Links zeigen alle die Startseite an. "index.html" ist allerdings KEINE physikalische Datei auf meinem Server. Weil nun gerne hätte, daß alle Links auf meine Startseite gleich aussehen, nämlich https://DOMAIN/ (mit oder ohne Trailing Slash, da will ich mal nicht so sein :-) ) habe ich folgende Regel ersonnen:

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^/index.html$ https://%{HTTP_HOST} [R=301,L]

(Ob der Redirect auf HOST oder SERVER_NAME geht, ist in diesem Zusammenhang zweitrangig)

Es funktioniert auch mit folgendem Pferdefuß:
Der URL:
https://DOMAIN/index.html?
redirected auf
https://DOMAIN/?

nimmt also das häßliche Fragezeichen mit, obwohl der QUERY_STRING ja leer ist.

Hat hierfür jemand eine Lösung, das Fragezeichen los zu werden?


Vielen Dank und Viele Grüße von hier

Anzeige von ABAKUS

von Anzeige von ABAKUS »


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

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 06.10.2008, 11:22

Ja.

Netterweise wirst Du das Fragezeichen durch ein Fragezeichen los:
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^/index.html$ https://%{HTTP_HOST}? [R=301,L]

Hube
PostRank 1
PostRank 1
Beiträge: 11
Registriert: 25.09.2008, 09:54

Beitrag von Hube » 06.10.2008, 12:27

Funktioniert bestens.... Vielen Dank!
Verstanden hätte ich das aber schon noch gerne .... so ganz klar ist mir das nicht :-?

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.


Southmedia
PostRank 10
PostRank 10
Beiträge: 7322
Registriert: 20.07.2003, 19:56

Beitrag von Southmedia » 06.10.2008, 12:51

Ein ? in der Rewriterule sorgt dafür, dass ein eventuell schon bestehender Querystring auf jeden Fall gelöscht wird - auch dein leerer mit dem ?.

Hube
PostRank 1
PostRank 1
Beiträge: 11
Registriert: 25.09.2008, 09:54

Beitrag von Hube » 06.10.2008, 13:19

Jetzt habe ich auch endlich DIE Zeile in der Doku gefunden, in der das ganz lapidar unter "One more note:" steht (und die ich bis jetzt wohl immer überlesen hatte) :
>When you want to erase an existing query string, end the substitution string with just the question mark.

Aha!! Man lernt doch nie aus, wie schön! :lol: Vielen Dank!

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag