Sicherheit: SSL Verschlüsselung

Aus Fishnet Wiki
Zur Navigation springen Zur Suche springen

SSL Verschlüsselung

Prinzipiell sollten Sie mindestens in der Kaufabwicklung eine SSL Verschlüsselung anbieten. Hierfür muss Ihr Hoster ein SSL Zertifikat auf dem Server einbinden. Für diesen Service wird er Ihnen in der Regel eine jährliche Gebühr berechnen. Wir empfehlen ein eigenes SSL Zertifikat also kein billiges "SSL Proxy", die Kunden kennen den Unterschied und es sieht unprofessionell aus.

Wenn Ihr Hoster Ihnen Bescheid gibt, das das SSL Zertifikat installiert ist, müssen Sie nur in die beiden Dateien

includes/configure.php

und

admin/includes/configure.php

gehen und dort den Punkt

define('ENABLE_SSL', false); // secure webserver for checkout procedure?

ändern in

define('ENABLE_SSL', true); // secure webserver for checkout procedure?

also nur aus false ein true machen.

Außerdem sollte die Zeile "HTTPS_SERVER" so aussehen

 define('HTTPS_SERVER', 'https://www.deinshopname.de'); // eg, https://localhost - should not be empty for productive servers

Möchten Sie Ihren Fishnet Shop komplett verschlüsseln, funktioniert das wie folgt: 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()]);
}

/includes/configure.php: Alle http:// durch https:// ersetzen und ENABLE_SSL auf false setzen.

define('HTTP_SERVER', 'https://meinshop.de');
define('HTTPS_SERVER', 'https://meinshop.de');
define('ENABLE_SSL', false);

/admin/includes/configure.php:

define('HTTP_SERVER', 'https://meinshop.de');
define('HTTP_CATALOG_SERVER', 'https://meinshop.de');
define('HTTPS_CATALOG_SERVER', 'https://meinshop.de');
define('ENABLE_SSL_CATALOG', 'false');


In die .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
  RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]