Florian Neumeyer: RewriteEngine in Apache

Hallo !

Ich habe ein kleines Problem mit der RewriteEngine unter Apache. Und zwar will ich eine Subdomainweiterleitung in ein gleichnamiges Unterverzeichnis machen, sozusagen www.*.flone.de wird nach * umgeleitet. Folgenden Code habe ich schon programmiert, der funktioniert auch soweit ganz gut, nur möchte ich zusätzlich auch www.*.flone.de/* nach */* usw. umleiten lassen können. Wie muss ich das Script dementsprechend anpassen ?

Vielen Dank im Voraus !

Mfg.
Florian Neumeyer

Das Script:

RewriteEngine on
RewriteCond   %{HTTP_HOST}                 ^www.[^.]+.flone.de$
RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
RewriteRule   ^www.([^.]+).flone.de(.*) $1

  1. Hallo auch!

    Ich habe ein kleines Problem mit der RewriteEngine unter Apache. ...
    RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
    RewriteRule   ^www.([^.]+).flone.de(.*) $1

    Geht
    RewriteRule   ^www.([^.]+).flone.de(.*) $1$2
    nicht ? Oder denk ich da zu einfach?

    MfG Slim

    1. Hallo Slim !

      Geht

      »»  RewriteRule   ^www.([^.]+).flone.de(.*) $1$2

      nicht ? Oder denk ich da zu einfach?

      Ja, so hatte ich's auch schon mal probiert, allerdings kommt dann beim Aufruf von z.B. http://www.sysinfo.flone.de/html.inc folgende Fehlermeldung:

      Forbidden
      You don't have permission to access /sysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfosysinfohtml.inc on this server

      Keine Ahnung, wo das viele $1 herkommt...

      Mfg.
      Florian Neumeyer
      Mfg.
      Florian Neumeyer

      1. Hallo Florian

        Ich kenn mich mit dem Apache und seinem Rewritemech. nicht aus, gebe ich zu. Nur
        allgemein mit RegExpr etc. aber das riecht nach einer Rekusiven Schleife.
        Sind diese beiden ersten Zeilen überhaupt erforderlich.

        (1) RewriteCond   %{HTTP_HOST}                 ^www.[^.]+.flone.de$
        (2) RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]

        (3) RewriteRule   ^www.([^.]+).flone.de(.*)$ $1$2

        Also wenn (1) sowas wie ein Makro sein soll, dann machen 1+2 ziemlich dasselbe wie (3),
        bzw. (2) sieht gefährlich rekursiv aus, falls Apache Makros so ersetzt .
        Allgemein gilt bei RegExpr: Die längsten Regeln zuerst notieren. Also eigentlich sollte (3)
        alleine schon das gewünschte erledigen, evtl. noch um ein EOL ($) ergänzt (s.o.).
        Wenn das auch nicht hilft, bin ich mit meinem Latein leider am Ende.

        MfG Slim

        1. Hallo Slim !

          Also eigentlich sollte (3) alleine schon das gewünschte erledigen, evtl. noch um ein EOL ($) ergänzt (s.o.).

          Egal ob mit oder ohne EOL, es scheint so gar nicht mehr umzuleiten :(

          Wenn das auch nicht hilft, bin ich mit meinem Latein leider am Ende.

          Schade, vielleicht fällt dir doch noch was ein *hoff*

          Mfg.
          Florian Neumeyer