Magento SSL-Verschlüsselung

Wie verschlüsselt man Backend und Checkout in Magento? Durch die geeingnete Einstellung im Backend in System->Konfiguration->ALLGEMEIN->Web->Sicher. Doch wie verschlüsselt man auch alle restlichen Seiten? In dem man die sicherer Base-URL auch System->Konfiguration->ALLGEMEIN->Web->Ungesichert einträgt. Jaaa, so einfach, oder! Leider nicht bei bestehenden Magento-Installationen. Was ist hier das Problem? Alle in den Suchmaschinen indizierten ungesicherten (mit http-Protokoll ausgelieferten) Unterseiten werden nun zur Startseite umgeleitet.

 

 

Was ist hier also das bessere Vorgehen?

 

Zuerst leiten wir alle Anfragen an den Server per .htaccess auf https:// um, z.B. mit

 

RewriteCond %{HTTPS} !=on

RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

 

Danach müssen wir leider noch etwas nachjustieren, da einige Verlinkungen auf den verschiedenen Seiten (z.B. der Coupon-Link im Warenkorb, den "Add to cart"-Button in der Produktdetailansicht, das Kontaktformular, etc.).

 

Diese Bereiche können wir nun unkompliziert mit einem kleinen Modul sichern, welches auf der Secure Cart Extension von Fishpig basiert. Hierzu brauchen wir nur eine config.xml, z.B. in 

 

app/code/local/Econcess/CartSecure/etc/,

 

die dann in etwa so aussehen kann (die einzelnen Bereiche sind überwiegend selbst sprechend, "monkey" ist hierbei die Newsletter-Sektion im Benutzerkonto, die "MailChimp" ausliefert:

 

<?xml version="1.0"?>

<config>

                <modules>

                               <Econcess_CartSecure />

                </modules>

                <frontend>

                               <secure_url>

                                               <catalog_product>/catalog/product</catalog_product>

                                               <checkout_cart>/checkout/cart</checkout_cart>

                                               <checkout>/checkout/cart</checkout>

                                               <checkout_cart_add>/checkout/cart/add</checkout_cart_add>

                                               <contacts>/contacts</contacts>

                                               <tag>/tag</tag>

                                               <monkey>/monkey</monkey>

                               </secure_url>

                </frontend>

</config>

 

Das Modul dann nur aktivieren mit der in unserem Besipiel mit Econcess_CartSecure.xml benannten Datei in

 

app/etc/modules/,

 

die dann so aussehen kann:

 

<?xml version="1.0"?>

<config>

                <modules>

                               <Econcess_CartSecure>

                                               <active>true</active>

                                               <codePool>local</codePool>

                               </Econcess_CartSecure>

                </modules>

</config>

 

So ist dann alles, wie es sein soll. Getestet in Magento 1.8.0.0.