Malte: Probleme mit SSL verschlüsselten Shopseiten und mod rewrite

Hallo an alle Experten,

ich habe in meiner .htaccess Datei folgenden Befehlssatz:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.mk-schornstein-fachhandel.de$
RewriteRule ^ http://www.mk-schornstein-fachhandel.de%{REQUEST_URI} [R=301]

Die Website läuft auf einem Strato Server.
Auf diesem Server betreibe ich einen Onlineshop, in dem der Bestellvorgang SSL verschlüsselt ist. Diese Verschlüsselung läuft über einen extra Server (proxy?) bei Strato.
Die URL's, der Seiten die verschlüsseltt werden sollen, werden dann in dieser Form angezeigt https://ssl-id.de/mk-schornstein-fachhandel.de/shop/usw.html.

Wenn ich nun mod_rewrite aktiviert habe, werden alle SSL verschlüsselten Seiten mit https:// in http://www.mk-schornstein-fachhandel.de umbenannt.
Dieses führt dazu das man leider keinen Bestellvorgang mehr tätigen kann (was äußerst schlecht ist).

Nun meine Frage: Wie bekomme ich hin, das die SSL verschlüsselten Seiten auch korrekt laufen?!
Kann man eine Ausnahmeregel für diese Seiten setzen?
Ich beschäftige mich mit mod_rewrite erst seit kurzem und habe deswegen noch nicht so den Durchblick.

Vielen Dank schon mal für Eure Hilfe

Malte

  1. Hallo Malte,

    RewriteCond %{HTTP_HOST} !^www.mk-schornstein-fachhandel.de$

    diese Kondition trifft zu, wenn ein Client (Browser) seine Anfrage nicht an die Domain www.mk-schornstein-fachhandel.de stellt (z. B. wenn in der Adresszeile "http://mk-schornstein-fachhandel.de" steht).

    RewriteRule ^ http://www.mk-schornstein-fachhandel.de%{REQUEST_URI} [R=301]

    %{Apache-Variablen} stehen nur der Direktive RewriteCond zur Verfügung.

    Die URL's, der Seiten die verschlüsseltt werden sollen, werden dann in dieser Form angezeigt https://ssl-id.de/mk-schornstein-fachhandel.de/shop/usw.html.

    Strato setzt für SSL-Verschlüsselung keinen Proxy ein, wahrscheinlich bedient man sich nur eines Virtualhosts unter der Domain ssl-id.de. Nach Deiner konfigurierten Bedingung ist ssl-id.de eben auch davon betroffen, da, wie zu sehen ist, der Host eben auch nicht www.mk-schornstein-fachhandel.de ist.

    Nun meine Frage: Wie bekomme ich hin, das die SSL verschlüsselten Seiten auch korrekt laufen?!
    Kann man eine Ausnahmeregel für diese Seiten setzen?

    Was genau ist Dein Anliegen; also warum soll nur vom Host www.mk-schornstein-fachhandel.de Anfragen beantwortet werden?

    Gruß aus Berlin!
    eddi

    1. Hallo Eddi

      danke schon mal das du antwortest.

      Ich habe die Regel eingesetzt weil ich mehrere Domainnamen verwende und damit doppelten Content in den Suchmaschinen verhindern möchte.

      Es soll eben halt alles unter www.mk-schornstein-fachhandel.de in den Suchmaschinen gelistet werden.

      Ich suche jetzt eigentlich nur eine Möglichkeit das die Domain
      ssl-id.de nicht von dieser Umleitung betroffen ist.

      Es laufen vier Seiten des Bestellvorganges über diese Domain (ssl-id.de).
      Nur mit meiner jetzigen Regel ist es nicht möglich den Bestellvorgang zu beenden.
      Ist nicht gerade verkaufsfördernd ;O)

      Ich hoffe ich habe Deine Frage beantwortet.

      Gruß

      Malte

      1. Re:

        Für den Einstig in die Materie "Mod_Rewrite" ist es essentiell, sich mit Regulären Ausdrücken zu beschäftigen. Die Apachedokumentation hält dazu auch weiterführende Verweise bereit. In Deinem Fall musst Du also alles, was nicht verändert werden soll, in RewriteCond mit %{HTTP_HOST} vergleichen:

        RewriteEngine On  
        RewriteCond   %{HTTP_HOST} !^(www\.)?(mk-schornstein-fachhandel|ssl-id)\.de$  
        RewriteRule   (.*)         http://www.mk-schornstein-fachhandel.de/$1            [R=301,L]
        

        Es sollen die Hosts www.mk-schornstein-fachhandel.de und www.ssl-id.de nicht weitergeleitet werden. Beide lhaben ein gleiches Prä- und Suffix:

        www.  mk-schornstein-fachhandel  .de
        www.           ssl-id            .de

        Das Lässt sich dann wie oben zu www.(mk-schornstein-fachhandel|ssl-id).de vereinfachen. Dadurch, dass man im Browser auch www. in der Adresszeile weglassen kann, ist das gemeinsame Präfix optional, was man, wie der Link oben erklärt, mit einem Fragezeichen markiert.

        Gruß aus Berlin!
        eddi

        1. Vielen Dank für deine Hilfe Eddi!

          Es funktioniert so wie ich es mir gedacht habe.
          Ich würde mich auch gerne noch mehr mit der Materie beschäftigen, aber bis jetzt sind alle scheinbar vernünftigen Dokumentationen die ich gefunden habe in Englisch.
          Da ich jetzt nicht so der Englisch Crack bin suche ich da irgendwas in Deutsch.
          Alles was ich bis jetzt so im Internet gefunden habe war für mich nicht so brauchbar.

          Vielleicht hast du ja noch einen guten Link.

          Gruß

          Malte

          1. Re:

            Vielleicht hast du ja noch einen guten Link.

            Nein, tut mir Leid.

            Gruß aus Berlin!
            eddi

            --
            Denn wenn man etwas liebt; und es sich nach und nach verflüchtigt, verbleibt ein Hohlraum, wo einst Leben war.
          2. Hi,

            Ich würde mich auch gerne noch mehr mit der Materie beschäftigen, aber bis jetzt sind alle scheinbar vernünftigen Dokumentationen die ich gefunden habe in Englisch.

            Ist meistens so.
            Und wenn Übersetzungen existieren, sind sie immer mit Vorsicht zu geniessen - oftmals nicht auf aktuellem Stand, oder nicht präzise. (Es geht mir oft so, wenn ich mal wieder die deutsche Übersetzung einer Dokumentation lese, dass ich bei bestimmten Formulierungen stutzig werde, weil sie in sich widersprüchlich sind, oder aus anderem Grund unverständlich. Wenn ich dann wieder ins englische Original an die entsprechende Stelle schaue, wird meistens sofort klar, was gemeint ist.)

            Da ich jetzt nicht so der Englisch Crack bin suche ich da irgendwas in Deutsch.

            Die Fähigkeit, mit englischsprachiger Dokumentation umgehen zu können, ist in der IT unentbehrlich.

            Alles was ich bis jetzt so im Internet gefunden habe war für mich nicht so brauchbar.

            Ausser http://www.modrewrite.de/ ist mir nichts deutschsprachiges zum Thema bekannt.
            Und auch das ist gegenüber der Doku auf der Apache-Seite eher dürftig.

            MfG ChrisB

            --
            “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]