Steve: Umleitung www auf non-www / htaccess

Nabend,

kann mir jemand bitte sagen, wie ich mit der htaccess nur das root verzeichnis auf www. umleite und trotzdem einige unterordner als subdomain behalten kann?

Bsp: ich will haben statt: http://example.de www.example.de
aber zugleich auch ordner1.example.de (liegt dann im Verzeichnis /ordner1)

Ich hab bisher:

RewriteEngine On
RewriteCond   %{HTTP_HOST}   ^ordner1.example.de$
RewriteCond   %{REQUEST_URI} !/ordner1/
RewriteRule   (.*)           /ordner1/$1 [L]

Wenn ich jetzt aber standardmäßig

RewriteCond %{HTTP_HOST} !^www.example.de$
RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]

hinzufüge, funktionieren die Subdomains nicht mehr, sondern es wird einfach wieder alles auf die www.example.de umgeleitet.

Hoffe auf Hilfe,

Danke schön

CU

  1. Moin!

    RewriteCond %{HTTP_HOST} !^www.example.de$
    RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]

    hinzufüge, funktionieren die Subdomains nicht mehr, sondern es wird einfach wieder alles auf die www.example.de umgeleitet.

    ich übersetze mal Deine Kondition: alles was nicht mit dem HTTP_HOST "www.example.de" entspricht wird zu  "www.example.de" umgeleitet.

    Du willst aber alles, was ohne "www." oder eine andere Subdomain aufgerufen wurde zu "www.example.de" umleiten.

    Dann schreib das dem Indianer so auf:

    RewriteCond %{HTTP_HOST} !^example\.de$  
    RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301] # Dies löst bei erfüllter Kondition einen neuen HTTP-Request aus.
    

    Jetzt willst Du noch einige Order umschreiben, so dass diese als "Subdomain" benutzt werden können. Das ist aber unsinn. Richte die Subdomains ordentlich als solche ein. Hinweise hierzu liefert der Abschnitt virtuelle Domains (namensbasiert) der Apache-Dokumentation.

    Solltest Du dazu konkrete Fragen haben oder sollte es Dir aus administrativen Gründen nicht möglich sein, dann frag hier wieder unter Angabe des Problems.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix

    1. Hi,

      RewriteCond %{HTTP_HOST} !^example.de$

      RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301] # Dies löst bei erfüllter Kondition einen neuen HTTP-Request aus.

        
      Schritt 1: Herzlich willkommen in der Endlosschleife!  
      Schritt 2: Um die Endlosschleife zu verlassen, wiederholen Sie bitte Schritt 1.  
        
      Cheatah  
      
      -- 
      X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|  
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html  
      X-Will-Answer-Email: No  
      X-Please-Search-Archive-First: Absolutely Yes
      
      1. Moin!

        Hi,

        RewriteCond %{HTTP_HOST} !^example.de$

        RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301] # Dies löst bei erfüllter Kondition einen neuen HTTP-Request aus.

        
        >   
        > Schritt 1: Herzlich willkommen in der Endlosschleife!  
        > Schritt 2: Um die Endlosschleife zu verlassen, wiederholen Sie bitte Schritt 1.  
        >   
        > Cheatah  
          
        Stimmt, Da ist ein "!" zu viel. Tatsächlich geht es so:  
          
          
        RewriteCond %{HTTP\_HOST} example\.de$  
        RewriteRule ^(.\*)$ http://www.example.de/$1 [L,R=301]  
          
        Andere Subdomains werden dann davon auch nicht berührt...  
          
          
          
          
        MFFG (Mit freundlich- friedfertigem Grinsen)  
          
        fastix  
        
        -- 
        [Des fastix kleines CMS](http://www.fastix.org/fastix-cms/)
        
        1. Stimmt, Da ist ein "!" zu viel. Tatsächlich geht es so:

          RewriteCond %{HTTP_HOST} example.de$
          RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]

          Andere Subdomains werden dann davon auch nicht berührt...

          Hm wenn ichs so mach, funktioniert irgendwie gar nix mehr????

          Fehler: Umleitungsfehler

          Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.

          :(

          1. Hallo,

            RewriteCond %{HTTP_HOST} example.de$
            RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]
            Hm wenn ichs so mach, funktioniert irgendwie gar nix mehr????

            mitdenken, Steve, mitdenken! :-)
            Die ursprünglich von fastix vorgeschlagene Version:

            RewriteCond %{HTTP_HOST} !^example.de$
            RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]

            Das hat er ja schon als falsch erkannt:

            Stimmt, Da ist ein "!" zu viel. Tatsächlich geht es so:

            Leider hat er, wenn du mit der Originalfassung vergleichst, nicht nur das '!', also die Negation weggenommen, sondern auch noch das '^', also das Symbol für den Stringanfang. Damit gilt die Regel nun fälschlicherweise für alle Hostnamen, die mit example.de enden.

            So long,
             Martin

            --
            Chef zum Bewerber: Es gibt zwei Dinge, auf die ich allergrößten Wert lege. Das eine ist Sauberkeit! Haben Sie übrigens die Schuhe auf der Matte abgetreten? - Ja, selbstverständlich. - Gut. Das andere ist uneingeschränkte Ehrlichkeit. Übrigens, draußen liegt gar keine Fußmatte.
            Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
            1. mitdenken, Steve, mitdenken! :-)

              hm ja is wohl wahr, is sonntag abend nicht meine stärke :)

              aber danke euch :D hat geklappt!

              grüße

    2. Hallo,

      RewriteCond %{HTTP_HOST} !^example.de$

      RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301] # Dies löst bei erfüllter Kondition einen neuen HTTP-Request aus.

        
      wuah, noch so einer, der Apache-Konfigurationscode als PHP auszeichnet!  
      Wie kommt man denn auf sowas?  
        
      
      > Jetzt willst Du noch einige Order umschreiben, so dass diese als "Subdomain" benutzt werden können. Das ist aber unsinn. Richte die Subdomains ordentlich als solche ein.  
        
      Es gibt Hoster, die genau das in ihrer Standardkonfiguration voreingestellt haben. Bei one.com ist es beispielsweise so, dass ich Dateien im Verzeichnis /foo meines Webspace wahlweise unter http://example.org/foo, http://www.example.org/foo oder http://foo.example.org abrufen kann.  
      Damit will ich nicht sagen, dass das gut oder gar normal wäre. Aber zumindest ist die Idee nicht neu.  
        
      Ciao,  
       Martin  
      
      -- 
      Politik ist die Kunst, die Menschen so zu bescheißen, dass sie auch noch glauben, sie hätten das selbst so gewollt.  
        
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
      
      1. Moin!

        wuah, noch so einer, der Apache-Konfigurationscode als PHP auszeichnet!
        Wie kommt man denn auf sowas?

        Ich wollte schön bunt haben.

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix

        1. Hi,

          wuah, noch so einer, der Apache-Konfigurationscode als PHP auszeichnet!
          Wie kommt man denn auf sowas?
          Ich wollte schön bunt haben.

          [lang=apache] macht auch schön bunt. Anders bunt, aber bunt. ;-)

          So long,
           Martin

          --
          Man soll den Tag nicht vor dem Abend loben.
          Und den Mann nicht vor dem Morgen.
            (alte Volksweisheit)
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    3. also eigentlich möchte ich quasi dass nur meine Hauptdomain zu www. einen redirect macht. Die Unterordner sollen als Subdomain dienen, die muss ich auch anlegen, so wurde es mir von meinem Hoster (prosite) gesagt. die subdomains funktionieren so auch, aber eben nur, solang ich meine hauptdomain nicht redirecte.
      ist schwer zu formulieren, ich hoffe du verstehst das trotzdem :D

      Danke und Grüße

      1. Moin!

        also eigentlich möchte ich quasi dass nur meine Hauptdomain zu www. einen redirect macht. Die Unterordner sollen als Subdomain dienen, die muss ich auch anlegen, so wurde es mir von meinem Hoster (prosite) gesagt. die subdomains funktionieren so auch, aber eben nur, solang ich meine hauptdomain nicht redirecte.
        ist schwer zu formulieren, ich hoffe du verstehst das trotzdem :D

        Guckst Du hier.

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix