SSL
kompletten Shop über SSL bei modified-shop 2.x[Bearbeiten]
Wichtig: Beim Hoster darf keine SSL-Zwangsumleitung von http -> https aktiviert werden!
folgende Einstellungen in der /includes/configure.php durchführen:
define('HTTP_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('HTTPS_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('ENABLE_SSL', true);
(wobei https://SUBDOMAIN.DOMAIN.TLD durch Deine Shop-URL zu ersetzen ist -> zB. https://www.meinshop.de)
folgende Einstellungen in der .htaccess durchführen:
##-- redirect to https www-domain, when www is missing and no subdomain given and not using an ssl-proxy RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteCond %{HTTP_HOST} !\.(.*)\. [NC] RewriteCond %{HTTP_HOST} !^localhost [NC] RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
oder wenn das nicht funktioniert:
##-- redirect to https non-www-domain, when no subdomain given and not using an ssl-proxy RewriteCond %{SERVER_PORT} !^443$ [OR] RewriteCond %{HTTP_HOST} ^www\. [NC] RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
kompletten Shop über SSL bei modified-shop 1.0x[Bearbeiten]
In includes/application_top.php ab ca. Zeile 273 folgenden Code
elseif (($request_type == 'SSL') && isset ($_GET[session_name()])) { session_id($_GET[session_name()]); }
mit diesem Code ersetzen
elseif (($request_type == 'SSL') && isset ($_GET[session_name()]) && $_GET[session_name()] != $_COOKIE[session_name()]) { session_id($_GET[session_name()]); }
Dann in den configure-Dateien:
/includes/configure.php:
define('HTTP_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('HTTPS_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('ENABLE_SSL', false);
/admin/includes/configure.php:
define('HTTP_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('HTTP_CATALOG_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('HTTPS_CATALOG_SERVER', 'https://SUBDOMAIN.DOMAIN.TLD'); define('ENABLE_SSL_CATALOG', 'false');
Dann in der .htaccess nach “RewriteEngine On“ einfügen:
##-- redirect to https www-domain, when www is missing and no subdomain given and not using an ssl-proxy RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteCond %{HTTP_HOST} !\.(.*)\. [NC] RewriteCond %{HTTP_HOST} !^localhost [NC] RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] RewriteCond %{HTTPS} off RewriteCond %{SERVER_PORT} !^443$ RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Achtung!
Einige Webserver haben Probleme mit diesen 3 Zeilen:
RewriteCond %{HTTPS} off RewriteCond %{SERVER_PORT} !^443$ RewriteCond %{HTTP:X-Forwarded-Proto} !https
Typische Fehlermeldung im Firefox: "Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann."
In diesem Fall die Zeilen einzeln nacheinander auskommentieren (#) und testen welche Einstellung der Webserver unterstützt.
Wichtig: Beim Hoster darf keine SSL-Zwangsumleitung von http -> https aktiviert werden!
SSL bei xtcommerce[Bearbeiten]
xtcommerce kann bestimmte Seiten, jene worin vertrauliche Daten übertragen werden (Anmeldung, Bestellprozess), gesichert übertragen. Die Konfigurationen für SSL (HTTPS) werden im xtc_installer abgefragt und entsprechend konfiguriert. Eine nachträgliche Aktivierung der gesicherten Übertragung erfolgt durch Anpassung der Konfigurationsdateien.
Aktivierung SSL[Bearbeiten]
Damit Seiten via SSL übertragen werden können, muß auf dem Webserver des Shops ein SSL-Zertifikat installiert sein. Ist dies gegeben, kann der Shop mittels https aufgerufen werden (https://www....).
Nun öffnet man die Konfigurationsdateien
includes/configure.php
Darin findet man (u.a.) folgende Definitionen
define('HTTPS_SERVER', define('ENABLE_SSL',
HTTPS_SERVER ist die gesicherte Adresse (URL) des Shops einzutragen. Jene Aufrufadresse welche mit https beginnt. ENABLE_SSL ist auf von "false" auf "true" zu setzen.
admin/includes/configure.php
define('HTTPS_CATALOG_SERVER', define('ENABLE_SSL_CATALOG',
HTTPS_CATALOG_SERVER ist die gesicherte Adresse (URL) des Shops einzutragen. Jene Aufrufadresse welche mit https beginnt (identisch zu HTTPS_SERVER, s.o.)
ENABLE_SSL_CATALOG ist auf von "false" auf "true" zu setzen.
Ab jetzt schaltet xtcommerce beim Aufruf vertraulicher Seiten automatisch in den gesicherten Modus.