Beiträge

Vor kurzem haben ein Schüler und ich, die Schülerzeitungs-Website erkant.de auf https / SSL umgestellt – oben im Browser steht nun also nicht mehr http://… sondern https://… SSL bedeutet “Secure Sockets Layer” und ist ein Verschlüsselungsprotokoll (Erklärung) zur sicheren Datenübertragung im Internet.

Das brauchen wir aus Datenschutzgründen!

Datenschutz? Ja. Ein Datenschutzgesetz gibt es in Deutschland schon länger. Ab Mai 2018 gilt die neue Datenschutz-Grundverordnung ( kurz: DS-GVO ) der EU, die dann für alle Mitgliedsstaaten verbindlich ist. Auf dieser Website ist so eine Datenschutz-Maßnahme erforderlich, damit Daten aus unserem Kontaktformular nicht “ausversehen” an Dritte übertragen werden können.

Diese Website ist jetzt also sicherer für Besucher! Und verbessert die Position der Website bei Google ( SEO ), macht sie ein bisschen schneller, und so weiter.

Hier läuft übrigens noch eine Petition! Mitmachen hilft allen! Link zu open-petition.de

Gibt es Datenschutz auch an Schulen?

Na klar, und wie! Datenschutz-Richtlinien sind sogar ein zentrales Thema, das in der Verantwortung der Schulleitung liegt. Bisher ist es so, dass es in jedem Bundesland eigene Datenschutzrichtlinien gibt – das ist natürlich doof, wenn z.B. ein hamburger Lehrer an eine Schule in Schleswig-Holstein wechselt. Aber: Ab Mai wird das ja ein Stück weit anders, da die Länder sich im Großen und Ganzen an die EU-Datenschutz-Verordnung halten müssen und nichts eigenes mehr “stricken” sollen. Unterschiede gibt es aber dennoch!

Datenschutz-Beispiele aus dem Schulleben:

  • Lehrer dürfen die Noten vor anderen Schülern (aus Datenschutzgründen) nicht laut sagen.
  • SMS, Whatsapp-Nachrichten, Briefe, etc dürfen sie nicht lesen (aber Briefe oder Handys  vorrübergehend (z.B. bis Stundenende) einsammeln.
  • Glasklar dürfte sein, dass Schulen natürlich keine Zeugnisnoten, Adressen und so weiter an Fremde weitergeben dürfen, oder?
  • dass jeder sein Smartphone mit Passwort schützt, ist üblich … (siehe Foto)
  • und dass niemand fremde Bilder posten darf, etc weiß vermutlich fast jeder.

Kurz gesagt: Datenschutz ist ein heißes und brandaktuelles Thema!

Mehr dazu und angrenzende Themen lest und seht ihr hier:

PS: Diesen Artikel hatte ich für die Schülerzeitung erkant.de geschrieben. Deshalb der Bezug zum Schulwesen.

Mehr Artikel zum Thema Datenschutz / DS-GVO:

Es gibt mehrere Gründe, warum Websites durch eine Umstellung  auf https / SSL gesichert werden sollten – die ab Mai 2018 geltende DSGVO (Datenschutz-Grundverordnung) ist die eine. Weitere Gründe für die Umstellung:

  • Hacker und Schad-Programme haben es deutlich schwerer!
  • HTTPS ist aufgrund der DSGVO eine Pflicht auf Websites mit Kontakt-Formularen, Verkaufs-Seiten (Shops), etc
  • das Ranking bei Google-Suchergebnissen wird besser!
  • und die Website-Geschwindigkeit besser (siehe unten “google Speedtest”)
  • und es schafft Vertrauen bei Website-Besuchern, etc.

Die Frage ist: Wie kann eine Website auf https umgestellt werden? Hier ist ein

7-Schritte-Programm für die Umstellung von WordPress-Websiten:

Kontakt

Nicht selbst, sondern machen lassen?

1. SSL-Zertifikat beantragen.

Bei vielen Internet-Providern ( Web-Hosting-Anbieter) kann ein kostenloses Let’s Encrypt SSL-Zertifikat genutzt werden. Wenn Ihr Anbieter dieses noch nicht kostenfrei anbietet, kannst es eigentlich bei jedem serösen Anbieter im Kunden-Menü kostenpflichtig bestellt werden.

Bei unserem Provider (Artfiles aus HH) geht das im DCP unter: Domains -> SSL -> neu und zwar so:

Nachdem das SSL-Zertifikat bereit steht (enabled), kann die eigentliche WordPress-Umstellung beginnen.


2. HTTPS für Adminstrator in WordPress einrichten

Auf der offiziellen WordPress.org Website wird empfohlen, zuerst den Amin umzustellen wie folgt: Kopere diesen Pfad / diese Zeile:

define('FORCE_SSL_ADMIN', true);

Und füge diese kopierte Zeile in die Datei wp-config.php

OBERhalb von dieser Zeile ein:

/* That’s all, stop editing! Happy blogging. */

Meistens sind bereits einige Zeilen mit “define …. ” in der wp-config.php zu finden. In der Regel legen wir die neue Zeile direkt dahinter, aber vor /* That’s all, stop editing! Happy blogging. */

Damit Sie an die wp-config-php herankommen, müssen Sie sich per FTP beim Provider einloggen und diese Datei im jeweiligen Web-/Wordpress-Ordner suchen und zur Bearbeitung öffnen.

Danach gibt es im Browser oben in der Leiste, wo der Domain-Name steht, eine Sicherheits-Fehlermeldung mit Gelb-markiertem Schloss-Symbol. Das ist für den Moment so okay!

Kontakt

Nicht selbst, sondern machen lassen?


3. HTTPS auf der kompletten WordPress Webseite

Sofern keine anderen Probleme auftreten, kann der nächste Schritt erfolgen.

Nun muss die Webseiten- und WordPress-Adresse (URL) auf HTTPS umgestellt werden. Und zwar hier in den WordPress-Einstellungen, nach dem Einloggen als Admin -> Einstellungen -> Allgemein

 

Übrigens scheint eine URL ohne www die Geschwindigkeit der Website zu verbessern. Siehe Google Speedtest.

Soweit ist das fertig!  Doch jetzt kommt noch etwas ganz Wichtiges:


4. Die Umstellung der internen Links auf https.

Wird das vergessen, werden alle möglichen alten internen Verlinkungen / URL´s nicht funktionieren. Das geht am besten mit dem Plugin: Search & Replace (auf Deutsch verfügbar). Anders als andere Plugins dieser Art kann mit diesem Plugin direkt und ganz einfach ein Backup der SQL-Datenbank erstellt werden!

Bekannt von Textprogrammen können damit per Suchen und Ersetzen in der gesamten WordPress-Datenbank die Pfade / URL´s ausgetauscht werden. Siehe Bild:


 

Theoretisch sollte jetzt in der Browser-Zeile ein Schloss mit grünem Symbol erscheinen. Praktisch tut es das eigentlich nie … Fehler können übrigens mit einem Website-Tool wie dem ” Why No Padlock ” gefunden werden. In der Regel gibt es hier eine Warnung bei “Force HTTPS“:


Hinter “more Info” steht auch geschrieben, was getan werden muss:


5. Eine Änderung der .htaccess zum Erzwingen der https-Umleitung

Die Datei  .htaccess Datei muss auch über ein FTP-Programm auf dem Installationspfad bei dem Provider geöffnet und geändert werden. Jetzt bitte zuerst ein Backup der .htaccess anlegen!

Je nach Provider ist die Regel unterschiedlich. Es kann z.B. diese sein:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

oder diese:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

Example muss natürlich durch den eigenen Domain-Namen ersetzt werden, hier z.B. durch tiefenschaerfe.de

Hinterher steht das z.B. in der .htaccess (die grauen Angaben waren vorher schon da):

AddHandler af_php70 .php

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

 

Kontakt

Nicht selbst, sondern machen lassen?

Eigentlich fertig, aber … Das Symbol ist immer noch gelb?

Eventuell wird eine Mixed-Content-Warnung vom Browser angezeigt? Diese entsteht z.B. durch eingebaute externe Schriften, Hintergrundbilder in CSS-Dateien, etc, deren URL während der o.g. Prozesse nicht richtig umgestellt worden sind.  Im ersten Schritt könnte das o.g. Search & Replace-Plugin  erneut gestartet werden.

Mir ist es einmal passiert, dass ich die Suchen-Ersetzen-Funktion mit dem o.g. Plugin nur mit https://domainname.de durchgeführt habe, aber nicht mit https://www.domainname … Ich habe Stunden gebraucht, um DEN Fehler zu finden! Dabei war es ganz einfach …

Bleibt das Symbol immer noch gelb, gibt das Plugin Why No Padlock genaue Antwort darauf, welche URL immer noch nicht stimmt.

Manchmal ist es wirklich nur 1 Bild …

Bei Themes mit Layout-Editor passiert es nicht selten, dass die URL des Logo´s im Header nicht umgestellt wurde. Dann muss es halt im Theme-Customizer neu geladen werden, sodass dort auch der Pfad mit https anfängt.

 


6. Suchmaschinenoptimierung

Damit auch extern, vor allem in der Suchmaschine Google, alles weiterhin gut läuft und sie die Vorteile dort durch die Umstellung auf https auch nutzen können, sollte

a) auf der Google-Search-Console und Google-Analytics einer neuer Property-Eintrag bzw. die Property-Einstellung aktualisiert werden.

b) die XML-Sitemap Datei aktualisiert werden. Dies geht in der Regel über das installierte SEO-Plugin. Die sitemap-Datei muss auch mit der Google-Search-Console verlinkt werden (hier)


7. Der letzte Schritt ist ein rechtlicher …

Und zwar geht es hierbei um die Anpassung Ihrer Datenschutzerklärung bzgl. dieser SSL-Verschlüsselung. Ein Muster steht hier: https://www.datenschutz.org/datenschutzerklaerung-ssl-muster.pdf


Kontakt

Nicht selbst, sondern machen lassen?

Wir suchten Stundenlang nach der Ursache dafür, dass Medien (jpg) NICHT eingefügt werden konnten. Sie ließen sich nicht über die Funktion «Dateien einfügen» in einen Beitrag oder eine Seite einfügen, weil sie garnicht erst angezeigt wurden.

Die Mediathek lud die Bilder einfach nicht. Es dauerte und dauerte, das Ladesymbol drehte sich.

Helfen sollte laut gängiger WordPress-Hilfen:

  • php-Version anpassen, in der Regel höher stellen (z.B. von php 5.6 auf php 7 – das macht der Provider, i.d.R. nicht der WP-Entwickler)
  • das Memory- und WP-Limit könnten zu niedrig angesetzt sein. Wir steigertes es – wie hier beschrieben hoch – aber das löste unser Problem auch nicht.

Desweiteren glaubte der Theme-Entwickler:

  • … dass die functions.php vom chield theme schuld war und schrieb “remove any code one by one to check which one is causing any issu” -> das war es nicht.
  • auch ein Caching-Plugin sollte Ursache sein (unter “Plugins” deaktivieren und Browser neu laden) – war es aber nicht.

Schlussendlich war die Ursache das Theme!

Wir fanden bei einem anderen Theme das selbe Problem beschrieben. Es half der Theme-Wechsel!
Bei uns auch.

Nachdem der Theme-Entwickler ein Update zur Verfügung stellte, lief alles wieder.

Heißt soviel wie: Suche die Fehler nicht immer bei Dir selbst!

WordPress ist langsam? Memory- und WP-Limit zu niedrig?

Das kleine Plugin Server-IP & Memory Limit gibt nach Installation darüber Auskunft, wie der Server / Deine Website ausgelastet ist. Als Administrator siehst Du durch das Plugin nur 1 Zeile ganz unten auf jeder Website ->

memory wp limit

Der Wert von 256 MB beim Memory-Limit liegt weit über dem von WordPress genannten Minimum von 32MB. In diesem Beispiel ist also alles gut. Es sollten am besten 64 MB oder 128 MB sein.

Das WP-Limit ist ein eigener Wert und sollte auf jeden Fall nicht ausgeschöpft sein!

PHP Memory und WP Limit erhöhen

1. PHP-Memory erhöhen:

1.1 Man öffnet das Stammverzeichnis seines Blogs im FTP-Programm und öffnet die Datei: „.htaccess“. Diese Datei ergänzt am mit folgender Zeile:

„php_value memory_limit 256M“ – fertig.

> bei uns wurde dadurch keinerlei Problem gelöst. Im Gegenteil: Die Website war danach nicht mehr aufrufbar!

1.2 In der Regel wird das der Provider machen und nicht der Entwickler selbst. Eine „php.ini“ erstellen, welche in das WordPress Verzeichnis hochgeladen wird. Erneut kann die Datei mit einem Texteditor erzeugt werden, wobei folgende Zeile enthalten sein muss:

memory_limit=256M

> dadurch hat sich bei uns das Memory-Limit auf 256 MB erhöht!

2. WP-Limit erhöhen:

Durch einen Eintrag in der Datei „wp-config.php“ des FTP-Verzeichnisses kann das WordPress-Limit nach oben gesetzt werden. Dazu muss folgende Zeile an den Anfang des Codes eingefügt werden:

“define(‚WP_MEMORY_LIMIT‘, ‚256M‘);”

-> anfangs nutzte das bei uns garnichts. Es änderte sich nichts. Problem war ein falscher Zeilenaufbau! Tatsächlich muss die “wp-config” genau wie folgt und nicht anders anfangen:

<?php
define(‘WP_MEMORY_LIMIT’, ‘256M’);
/**

Das war es! Mit 1.2 und 2 wurde die Geschwindigkeit bei uns erhöht!

Diese Problem verursucht ein Haken bei “Vertragsabschluss – Bestellungen manuell prüfen” in dem Plugin von “Germanized” (unter Woocommerce-Einstellungen – > Germanzid) – mach ihn weg, dann geht es wieder.

bestellung nicht automatisch angenommen - germandizid ist das problem

WordPress-Hilfe bei: “Fehler beim Aufbau einer Datenbankverbindung” Es gibt 2, 3 verschiedene Lösungsmöglichkeiten, die mir aber nicht geholfen haben. Hier Tipp 4 von mir: Weiterlesen

Wer eine Website hat, der möchte natürlich wissen, was dort so alles passiert. Wie viele Leute schauen die Seite an? Woher kommen die Besucher? Wie lange bleiben sie? Ein einfacher Weg um Antworten auf diese Fragen zu bekommen, ist das Einbinden von Google-Analytics und des Google-Webmaster-Tools

Ein Google Konto ist schnell angelegt. Der nächste Schritt ist schon etwas komplizierter, denn nun möchte Google, dass auf der Website ein Tracking Code installiert wird. Das ist ein kleines Javascript, das Google erlaubt, Daten von der Website zu holen und zu protokollieren.
Wer sich nicht traut, im Code etwas händisch zu verändern, steht dumm da. Was jetzt? Wie kriege ich dieses Google-Dings auf meine Website?

In den Theme-Options nachgucken

Der erste Weg sollte Dich zu den Theme Options Deines WordPress-Themes führen. Die Theme-Options findest Du im Backend unter den Hauptmenüpunkt Design. Viele Entwickler haben dort nämlich schon ein Feld vorbereitet, in das man seine Google-Analytics-ID (Google sagt dazu übrigens “Web-Property-ID”) eintragen kann. Diese ID ist eine mehrstellige Nummer, die mit den Buchstaben UA beginnt: UA-XXXXX-Y.

Ist in den Theme-Options nichts zu finden oder unterstützt Dein Theme keine Theme-Options, dann könnte ein PlugIn die Lösung sein.

Ein PlugIn einsetzen

Auf der offiziellen PlugIn-Seite von WordPress gibt es unzählige PlugIns, die sich mit dem Thema Google Analytics beschäftigen. Auch in vielen SEO-PlugIns ist die Möglichkeit, den Google Analytics-Code über das Backend einzubetten, schon eingebaut.

Es ist allerdings nicht ganz einfach, ein PlugIn zu finden, dass nichts anderes tut, als den Tracking-Code einzubetten. Für die “großen” PlugIns ist das nur eine Nebensache.
Ich habe bei perishable press.com ein PlugIn gefunden, das tatsächlich nur den Tracking-Code einbaut, sonst nichts.

Weil wir es in Deutschland mit dem Datenschutz etwas genauer nehmen (mehr dazu weiter unten im Artikel), habe ich eine Zeile ergänzt und bei der Gelegenheit das PlugIn schnell ins Deutsche übersetzt. Meine Version findet Ihr am Ende des Artikels (Download-Link).

Selber machen

Du kannst den Tracking-Code natürlich auch per Hand in Dein Theme einbauen. Wenn Du nicht per FTP auf Deine Dateien zugreifen kannst, kannst Du dazu den Editor im WP-Backend nutzen (Design/Editor).

Das Javascript, das Google auf der Website anbietet, kommt in die header.php und zwar in den Bereich zwischen den head-Tags. Dabei solltest Du darauf achten, dass Du den Platzhalter UA-XXXXX-Y durch Deine eigene ID ersetzt.

Die Sache mit dem Datenschutz

Google bietet auf seiner Website das Javascript an, mit dem man den Tracking-Code einbetten kann. In diesem Beispiel fehlt allerdings etwas: Nämlich die Zeile, die dafür sorgt, dass die IP-Adressen der Besucher anonymisiert werden. Da eine IP-Adresse etwas sehr Individuelles ist und man anhand der IP den dazugehörigen Rechner identifizieren kann, ist das datenschutzrechtlich heikel.

Ergänzt man das Javascript durch die Zeile

_gaq.push(['_gat._anonymizeIp']);

werden alle IP-Adressen in den Google-Analytics-Protokollen verkürzt und lassen sich nicht mehr einzelnen Rechnern (und damit Personen) zuordnen. Die Zeile solltest Du ganz oben gleich nach der ersten Zeile des Scripts einbauen.

  var _gaq = _gaq || [];
  _gaq.push(['_gat._anonymizeIp']);
  _gaq.push(['_setAccount', 'UA-XXXXX-Y']);
  _gaq.push(['_trackPageview']);

Noch ein Tipp:
Wer Google Analytics nutzt, sollte unbedingt im Impressum darauf hinweisen. Tut man das nicht, drohen Abmahnungen!

PlugIn zum Einbauen des Google Analytics Tracking-Codes
[Original von perishablepress.com, Anonymisierung der IP-Adressen ergänzt]

Quelle: http://die-netzialisten.de/wordpress/wordpress-fur-anfanger-google-analytics-einbauen/