Apa­che mod_rewrite Über­sicht: So lei­ten Sie Anfragen wei­ter

Grund die­ses Arti­kels

Vie­le Admi­nis­tra­to­ren und Kun­den wol­len immer wie­der die sel­ben Wei­ter­lei­tun­gen ein­rich­ten. Des­halb stel­len wir hier die wich­tigs­ten Mög­lich­kei­ten zusam­men wie man in Apa­che mit Hil­fe des Rewri­te Moduls Wei­ter­lei­tun­gen ein­rich­ten kann. Falls eine wich­ti­ge Mög­lich­keit fehlt, schrei­ben Sie uns das ger­ne in die Kom­men­ta­re.

Wei­ter­lei­tung von http auf https

Von oben nach unten:

  1. Rewri­te­En­gi­ne anschal­ten. Falls Sie bereits die Rewri­te­En­gi­ne akti­viert haben, muss sie hier nicht zwin­gend noch ein­mal ange­schal­tet wer­den. Wir haben aber oft Vir­tu­al­Hosts auf Port 80 lau­fen, deren ein­zi­ge Auf­ga­be es ist die Anfragen an den Port 443 mit der SSL Ver­schlüs­se­lung wei­ter zu lei­ten.
  2. Die Bedin­gung sagt, „wenn HTTPS nicht an ist“, dann füh­re die Regel aus.
  3. Zei­le:
    1. Die Anfra­ge beginnt mit (^) einem Slash und alles was hin­ter dem Slash steht wird durch die Klam­mern in der ers­ten Varia­ble gespei­chert.
    2. Durch ein Leer­zei­chen getrennt folgt die Ziel­adres­se wohin wei­ter­ge­lei­tet wer­den soll und am Ende der Ziel­adres­se hän­gen wir die zuvor gespei­cher­te Varia­ble wie­der an.
    3. In den ecki­gen Klam­mern ste­hen spe­zi­el­le Anwei­sung, hier, dass mit einem per­ma­nent Redi­rect (R=301) wei­ter­ge­lei­tet wer­den soll und, dass dies die letz­te Regel (L) ist, die aus­ge­führt wer­den soll.

Auf einen bestimm­ten Host­na­men wei­ter­lei­ten

Die Wei­ter­lei­tung auf defi­nier­te Host­na­me hilft dabei Dupli­ca­te Con­tent zu ver­mei­den. Damit sorgt man dafür, dass die eige­ne Sei­te z.B. nur über www.adresse-im-netz.de und nicht über adresse-im-netz.de auf­ge­ru­fen wer­den kann, indem alle Anfragen an andresse-im-netz.de an www wei­ter­ge­lei­tet wer­den.

Von oben nach unten:

  1. Rewri­te Engi­ne anschal­ten
  2. Bedin­gung defi­nie­ren
    1. HTTP_HOST, also der auf­ge­ru­fe­ne Ser­ver­na­me wird ana­ly­siert
    2. Das Aus­ru­fe­zei­chen negiert den Ver­gleich, bedeu­tet hier also HTTP_HOST ist nicht im nach­fol­gen­den regu­lä­ren Aus­druck ent­hal­ten
    3. Das Caret (^) gibt an, dass wir von Anfang an prü­fen
    4. Inner­halb eines regu­lä­ren Aus­dru­ckes ist der Punkt (.) ein
    5. Das Dol­lar­zei­chen ($) gibt an, dass bis zum Ende geprüft wird

Von einem bestimm­ten Host­na­men auf ein Unter­ver­zeich­nis einer ande­ren Sei­te wei­ter­lei­ten

Wenn Sei­ten in bestehen­de Sei­ten z.B. als Kate­go­ri­en inte­griert wer­den, ist es nütz­lich von dem bis­he­ri­gen Host­na­men der alten Sei­te auf die Kate­go­rie­sei­te der neu­en Sei­te wei­ter zu lei­ten.

 Fazit

Das ist nur ein kur­zer Ein­blick in die Welt des sehr mäch­ti­gen mod_rewrite Moduls von Apa­che. Wenn Sie Fra­gen oder spe­zi­el­le Anfor­de­run­gen haben, schrei­ben Sie doch ger­ne einen Kom­men­tar.

Apa­che mod_rewrite Über­sicht: So lei­ten Sie Anfragen wei­ter
5 (100%) 1 Bewertung[en]

Andreas Nitsche

Andreas Nitsche

Andreas Nitsche ist Gründer und Inhaber von sixhop.net, der Internetagentur für Ihren Webauftritt. Mit der Erfahrung aus großen Projekten bei weltweit agierenden Automobilkonzernen und einem der größten Fernsehsender Deutschlands bringt er das nötige KnowHow mit, um Webseiten nicht nur online zu stellen, sondern die perfekte technische Grundlage für Ihre Webseite zu schaffen.
Andreas Nitsche

Latest posts by Andreas Nitsche (see all)

    Schreiben Sie einen Kommentar