03
Okt. 19

In die Kaninchenhöhle gefallen: alte Webserversicherungen zum Leben erwecken - Teil 1

Wenn nach langem Wunsch endlich ein Server zu Hause steht und die Idee aufkeimt, die Historie der eigenen Webseiten aus den Backups und portablen Webserver-Sicherungen an einer Stelle zusammenzuführen ... und wieder zum Laufen zu bringen. Schließlich gibt es nichts schöneres, als sich über die Sünden der Vergangenheit zu amüsieren ^-^ - Augenkrebs und so (Hier am Beispiel der Crazylounge anno 2001).

Problem: Portable Webserver laufen nicht mehr. Genauer gesagt, die MySQL-Datenbank funktioniert unter Windows 10 nicht.

Versuch 1: Glücklicherweise funktioniert die Windows XP VM, welche ich bis vor gar nicht all zu langer Zeit noch zur Nutzung des Scanners einsetzte, nach wie vor einwandfrei. Der Webserver startet dort, inklusive Zugriff auf die MySQL-Datenbanken & phpMyAdmin. Dumm nur, dass in dem funktionerenden Webserver die betroffenen Datenbanken doch nicht drin waren.

Versuch 2: Internet-Suche bringt mich zur Anleitung "Recovering MySQL Files and Database Tables" von Hetman Software. Mit Hilfe von MySQL Workbench können auch Datenbanken exportiert werden, deren Ordner aus dem ursprünglichen mysql-Verzeichnis in den mysql-Ordner einer bestehenden Datenbank hineinkopiert werden.

Nächster Schritt: Eine bestehende Datenbank muss her, also Docker-Container aufsetzen. Dieses Mal nicht in der Konsole sondern aus Bequemlichkeit direkt im Synology-Docker-Interface. Nicht vergessen die Variable MYSQL_ROOT_PASSWORD zu setzen.

Einrichten einer neuen Verbindung in MySQL Workbench: Hostname entspricht dem hostnamen des Servers, Port kann über docker ps herausgefunden werden. Klappt. Jetzt müsste ich die Ordner in den data-Ordner der Datenbank hineinkopieren ...

Problem: Upload von Dateien in den MySQL-Docker-Container ist gerade etwas umständlich für mich.

Alternative: Eine MySQL-DB, die in Windows läuft und auf deren Verzeichnisse ich aus Windows heraus zugreifen kann, wäre doch etwas angenehmer. Glücklicherweise habe ich den Bitnami-WAMP-Stack noch nicht ins Nirvana geschickt, nachdem die darauf laufenden Services auf den Webserver umgezogen sind. Zugriff darauf klappt genauso wie das Hinzufügen der Ordner aus alten mysql-Ordnern.

Wie in der oben erwähnten Anleitung den Data Export für einen der alten Ordner anstoßen. Ich exportiere zu einer Self-Contained File inklusive Dump- und Schema-Instruktionen. Die Warnung, dass die MySQL-Version nicht übereinstimmt ignoriere ich. Mehr als schiefgehen kann es nicht, immerhin liegt mehr als ein Jahrzehnt zwischen den Versionen.

Anschließend nutze ich die Exportdatei um die Datenbank in der Docker-Datenbank zu importieren. Es werden Tabellen angelegt, in den Tabellen ist Inhalt der so aussieht, als sei er komplett. Zugegebenermaßen - inbesondere die frühen Datenbanken sind so basic, dass ich weniger Probleme erwarte.

Als nächster Schritt bleibt nun die große Aufgabe, den PHP-Teil der Webseiten wieder mit dem Datenbankteil zu verbinden. Denn natürlich möchte ich nicht mit einer PHP-anno-tubac-Version auf dem Server arbeiten. Dies ist ein größeres Projekt - oder ich finde eine Bibliothek, die mysql_* in mysqli_* transformiert. Aber nicht mehr heute.


29
Dez. 18

WordPress-Update : Es scheint ja funktioniert zu haben

Die freie Zeit zwischen den Jahren habe ich genutzt, um den Schritt von WordPress 4.x auf 5.x zu wagen. Auf den ersten Blick sieht es gar nicht so schlimm aus, d.h. nichts offensichtliches ist kaputt gegangen. In wie fern dies für all die Anpassungen & Änderungen unter der Haube gilt, werde ich in den kommenden Tagen genauer prüfen müssen.

Definitiv gewöhnungsbedürftig ist der Gutenberg-Editor. Insbesondere die Eingabefelder für die Metaebene benötigen entweder Anpassung oder Gewöhnung. Ich bevorzuge weniger Klicks - und insbesondere keine animierten Reiter, die u.U. dazu führen, dass ich etwas falsches auswähle. Damit katapultierte ich diesen Beitrag einmal in den Papierkorb - nur um festzustellen, dass die Wiederherstellung ihn publizierte. Manchmal ist ein aktive Bestätigung, bevor eine Statusänderung übernommen wird, durchaus sinnvoll.


10
Juni 18

HSTS und nur noch HTTPS / Privacy Checker

Durch einen Beitrag im Netbib Weblog bin ich jüngst auf den Webseiten-Privacy-Checker von dataskydd.net aufmerksam geworden. Beflügelt durch die erfolgreiche Verlängerung der Letsencrypt-Zertifikate, welche ich seit drei Monaten nutze, war ich motiviert auch andere suboptimale Zustände zu beheben.

So war der Blog bisher auch ohne Verschlüsselung erreichbar. Und auch die HTTP Strict-Transport-Security-Angabe (HSTS) war bisher nicht gesetzt. Ich zweifelte zuerst, ob ich diese Einstellung in meinem Hosteurope-Webpack tätigen kann. Glücklichweise zu unrecht. Dank eines Blogeintrages von Janiczek habe ich die Verbesserung dieses Aspektes mit einem simplen Copy&Paste in die .htaccess-Datei erreicht.

RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</IfModule>

Jetzt wurmen mich nur noch ein wenig die Grafiken, die WordPress von seiner eigenen Domain aufruft (s.w.org). Diese sind z.Zt. zwar nur in drei Dateien verlinkt (wp-admin/about.php, wp-includes/formatting.php und wp-includes/general-tempate.php1) - dennoch ist eine manuelle Anpassung nicht meine favorisierte Lösungsmöglichkeit. Einfache Wartung und so... Da ich zur Zeit keine Emojis einsetze und der Admin-Bereich meine Privatsache ist, werde ich es wohl auch erst mal dabei belassen.

  1. Analyse mit Hilfe von Notepad++ und der "rekursiven Suche in einem Verzeichnis"-Funktion - sollte mir wohl mal den find-Befehl unter Windows näher anschauen []

24
März 18

Ein ordentliches Zertifikat

Das war schon länger überfällig. Nun habe ich also endlich die passenden Zertifikate für meine aktiven Domains erstellt mit Hilfe von Let's Encrypt.

Dafür musste für mich als oller Windows-Nutzer erst mal eine funktionierende Linux-Maschine in der Virtuellen Box her. Und dann der Certbot. Zusammenbasteln des benötigten Befehls, sudo certbot --manual certonly, und nach einigen kleinen Hürden - Berechtigungen1 und angestaubtes Terminal-Wissen2 - landeten die benötigten Dateien dann tatsächlich in der Zertifikats-Administration von Hosteurope3. Juchuh.

Beim Verifizieren der Weblog-Domains scheiterte ich jedoch mit dem zu schnellen Griff nach Strg+C - sehr fatal im Terminal - und erinnerte mich an ein Script, dass ich wenige Minuten zuvor auf einer als "nicht meine Frage beantwortende"-Seite gesehen habe: hosteurope-letsencrypt von Sebastian Stein zu meiner Rettung.

Also schnell git installiert, das Repository geklont, die 3 Einstellungsdateien erzeugt, das Erzeugungspython-Script ausgeführt und die relevanten Dateien anschließend hochgeladen, Fertig.

Update: Okay, das war doch noch nicht alles. Mit Hilfe von Search & Replace mussten noch sämtliche URLs auf Bilder und andere Resourcen im Blog von http auf https geändert werden. Ich hoffe, ich habe jetzt alle erwischt.

 

  1. Wie kommt ein Nutzer noch mal in eine Gruppe? sudo usermod -a -G groupName userName []
  2. Wie kopiere ich nicht den symbolischen Link sondern die Datei dahinter? -L []
  3. Zertifikat : fullchain.pem, Key: privkey.pem []

13
Jan. 18

Aufmerksamkeitsökonomie

Manchmal gibt es seltsame Zufälle. So bin ich bei dem Aufholen der ungelesenen Beiträge von ResearchBuzz' Firehose just über Farah Mohammeds Artikel " The Rise And Fall Of The Blog" gestolpert. Dort wird Gina Bianchini, welche sich gegen den Start eines Blogs in 2017 ausspricht, wie folgt zitiert:

“2017 is a very different world than 2007. Today is noisier and people’s attention spans shorter than any other time in history…and things are only getting worse. Facebook counts a ‘view’ as 1.7 seconds and we have 84,600 of those in a day. Your new blog isn’t equipped to compete in this new attention-deficit-disorder Thunderdome.”

Sie spricht aus der Perspektive einer Unternehmerin deren Ziel am Ende Umsatz ist1. Die Empfehlung, die dann kommt ist wahrscheinlich der aktuelle Stand des Marketing-Einmaleins2: Fokussierung, Personalisierung und diverse Maßnahmen zur Steigerung des Nutzer-Engagements, Sie nennt es "Deep Interest Network"3.

Manche4 dieser Punkte lösen bei mir Widerstreben aus. Schnell gedacht scheinen sie nicht vereinbar mit meinem idealistischen utopistischen Wunsch5, dass das Internet ein Werkzeug hätte sein können mit dem Wissen und Gemeinschaftssinn hätten verbreitet bzw. gestärkt werden können. Langsam gedacht ist die Problematik natürlich um Einiges komplexer.

Und dann gibt es natürlich auch noch die andere Perspektiven. Die (potentielle) Rolle von Blogs in der Wissenschaftskommunikation, insbesondere im fast schon fließenden Übergang zwischen Blog und wissenschaftlichem Journal. Oder dass es in Zeiten der Auswertung auch der letzten Datenfitzel durchaus gut sein kann, die Kontrolle zu behalten.

  1. Oder weniger polemisch ausgedrückt: aus der Sicht eines Menschens, der am Ende des Tages Geld für Essen und ein Dach über dem Kopf braucht und eben jenes mit Spaß und nicht mit "unschöner" Arbeit verdienen möchte []
  2. Die letztendlich nur Monetarisieren, was einst als Geektum verschrien war []
  3. Ironischerweise verwendet Alibaba einen Algorithm um die vielfältigen Interessen von Menschen vorherzusagen und bennent das Ergebnis ebenso: "Deep Interest Network for Click-Through Rate Prediction" []
  4. einige []
  5. Assoziation dazu: sehr lesenswerter Beitrag über Visions-/Utopienlosigkeit von Rüdiger Suchsland in Telepolis: "Sehnsucht nach einer Vergangenheit, die es nie gab" []