Gaby R.: Seitenumleitung auf https

Hallo, mein Provider hat meine Seiten auf https umgestellt. Jetzt stehe ich dumm da. Damit Aufrufe http://meinedomain.test, http://www.meinedomain.test, meinedomain.test und www.meinedomain.test auf https://www.meinedomain.test umgeleitet werden, soll ich meine .htaccess ändern. Da ich dies noch nie gemacht habe, bitte ich Euch um Hilfe. Gerne würde ich es nach dem Motto von Selfhtml selbst machen, aber die Einarbeitung dauert ja wohl bei mir länger. Und solange möchte ich meine Homepage nicht warten lassen. Danke Gaby

Ps: Falls dies möglich ist ohne direkte Angabe des Domainnamens, damit ich die gleiche .htaccess auch für eine andere Domain verwenden kann.

  1. Hej Gaby,

    mein Provider hat meine Seiten auf https umgestellt. Jetzt stehe ich dumm da.

    Das lässt sich ändern. Hier im Wiki sind die optionen erklärt.

    Schön wäre vielleicht noch ein kopierfähiges Beispiel (ode rhabe ich das nur übersehen?).

    Aber das Beispiel habe ich im Web für dich gefunden (mit der Begründung, warum das wichtig ist). Die Begriffe dafür lauten „htaccess permanent redirect“

    Da ich dies noch nie gemacht habe, bitte ich Euch um Hilfe. Gerne würde ich es nach dem Motto von Selfhtml selbst machen, aber die Einarbeitung dauert ja wohl bei mir länger. Und solange möchte ich meine Homepage nicht warten lassen.

    Geht ganz schnell, wie du siehst… 😉

    Marc

    1. So schnell geht es bestimmt nicht, da müsste ich ja wissen was z.B ^(.*).htm$ $1 bedeutet. Auch reguläre Ausdrücke sind mir noch unbekannt. Ich habe aber gearde etwas gefunden, und das scheint auf den ersten Anblick zu funktionieren:

      *# Aufruf ohne www ergänzen um www
      
      RewriteEngine On
      
      RewriteCond %{HTTP_HOST} !^www\..*             [NC]
      
      RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
      
      **# http => https**
      
      RewriteEngine On
      
      RewriteCond %{HTTPS} !=on
      
      RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]*
      

      Ist dies eine praktikable Möglichkeit? Warum zweimal 301 (permanente Umleitung)?

      1. Hej Gaby,

        So schnell geht es bestimmt nicht,

        Dann nimm doch einen Generator. Findest du alles unter den von mir genannten Suchbegriffen. 😉

        Marc

        1. Hej marctrix,

          So schnell geht es bestimmt nicht,

          Dann nimm doch einen Generator.

          Ups, das war kein generator: das hier ist einer.

          Trotzdem gilt:

          Findest du alles unter den von mir genannten Suchbegriffen. 😉

          Wobei es nicht schadet, das Wort „Generator“ hinzuzufügen, wen man einen möchte.

          Marc

          1. Hi, der Generator kann nicht gleichzeitig ggf.www ergänzen und http durch https ersetzen. Wenn ich ihn für beide Aufgaben zweimal starte, erhalte ich

            RewriteEngine On
            
            RewriteCond %{HTTP_HOST} !^www\. [NC]
            
            RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
            
            
            RewriteEngine On
            
            RewriteCond %{HTTPS} off
            
            RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
            

            Also in etwa das gleiche, was ich um 11:04 gepostet habe. Dabei kann man wohl das zweite "RewriteEngine On" weglassen. Die Frage ist, ob man das "[R=301,L]" beides mal benötigt.

            1. Hej Hi,,

              der Generator kann nicht gleichzeitig ggf.www ergänzen und http durch https ersetzen.

              Nur so aus Interesse (bei den Details können beatovich und andere besser helfen): wozu überhaupt das www ergänzen? Ist das wichtig?

              Habe ich nie gemacht…

              Marc

      2. hallo

        Ich habe aber gearde etwas gefunden, und das scheint auf den ersten Anblick zu funktionieren:

        # Aufruf ohne www ergänzen um www
        
        RewriteEngine On
        RewriteCond %{HTTP_HOST} !^www\..*             [NC]
        RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
        
        **# http => https**
        RewriteEngine On
        RewriteCond %{HTTPS} !=on
        RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]*
        

        Ist dies eine praktikable Möglichkeit? Warum zweimal 301 (permanente Umleitung)?

        Ich würde die Reihenfolgen der Regeln ändern. Das [L] in der ersten Regel bricht ja die spätere Prüfung nach https ab.

        Oder wenn schon die erste Regel sofort nach https umleiten, also:

        RewriteEngine On
        RewriteCond %{HTTP_HOST} !^www\..*             [NC]
        RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
        

        Ach und da du auch gerade umstellst:

        Du solltest alle in HTML/PHP verwendeten URIs, die deine Domain explizit erwähnen, ebenfalls auf https umstellen.

        Auch https kann angegriffen werden, vorzüglich in der Aufbauphase, wenn ein Client noch einen http Request versucht.

        --
        Neu im Forum! Signaturen kann man ausblenden!