{"id":305004,"date":"2024-10-07T00:48:32","date_gmt":"2024-10-06T22:48:32","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=305004"},"modified":"2024-10-07T09:46:31","modified_gmt":"2024-10-07T07:46:31","slug":"blog-umzug-insights-aus-dem-maschinenraum-teil-2","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2024\/10\/07\/blog-umzug-insights-aus-dem-maschinenraum-teil-2\/","title":{"rendered":"Blog-Umzug: Insights aus dem Maschinenraum &#8211; Teil 2"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" src=\"https:\/\/i.postimg.cc\/rsLDGByH\/image.png\" alt=\"Borns IT-Blog\" width=\"250\" height=\"173\" \/>In <a href=\"https:\/\/borncity.com\/blog\/2024\/09\/30\/blog-umzug-insides-aus-dem-maschinenraum-teil-1\/\">Teil 1<\/a> meiner zwei Blog-Beitr\u00e4ge hatte ich dargelegt, warum ich meinen IT-Blog und weitere Blogs in den letzten Wochen vom Anbieter HostEurope zu All-Inkl umgezogen habe. Der Umzug ist (bis auf Feintuning) weitgehend abgeschlossen. Ich hatte noch einige Insights versprochen, die ich nun in Teil 2 offen legen m\u00f6chte.<\/p>\n<p><!--more--><\/p>\n<h2>Warum ich eine Multisite-Installation aufgel\u00f6st habe<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vg05.met.vgwort.de\/na\/863d3c3582904e0daecfa25c15315ba8\" alt=\"\" width=\"1\" height=\"1\" \/>Ich betreibe aktuell insgesamt sechs Blogs unter der Domain borncity.com &#8211; von denen einer der IT-Blog hier ist. Auf borncity.com liegt nur eine Startseite, die dann auf einen Teil der Einzelblogs, die unter Sub-URLs wie\u00a0<em>blog, win, senioren, reisen <\/em>etc. erreichbar sind,\u00a0verlinkt.<\/p>\n<p>Das Angebot ist dabei historisch gewachsen &#8211; der IT-Blog hier lag bei HostEurope schon immer auf <em>borncity.com\/blog<\/em> und war als Single WordPress-Blog implementiert. Irgendwann vor vielen Jahren beschloss ich dann, dass ein englischsprachiges Pendant zum IT-Blog nicht schlecht w\u00e4re &#8211; und ich wollte eine \"Spielwiese\" f\u00fcr meine 50Plus-Buchleserschaft in Form eines Seniorenblogs.<\/p>\n<p>Seinerzeit entstand die Idee, dies als sogenannten Multisite-Blog zu implementieren. Weil ich den deutschen IT-Blog nicht in einem Multisite-Blog transferieren konnte, entstand ein Multisite-Blog, dessen Dateien unter borncity.com lagen, aber Blogs unter URLs wie\u00a0 <em>borncity.com\/win<\/em> etc. abbildeten. Der gro\u00dfe Vorteil eines Multisite-Blogs:<\/p>\n<ul>\n<li>Man braucht nur eine WordPress-Installation und eine Datenbank. Anschlie\u00dfend werden die Blogs im WordPress Dashboard angelegt.<\/li>\n<li>Es ist nur eine Benutzeranmeldung erforderlich &#8211; man meldet sich an einem Blog an, und kann auf alle Blogs als Administrator zugreifen.<\/li>\n<li>Plugins werden zentral in der Netzwerkverwaltung des Multisite-Blogs installiert, k\u00f6nnen auf den Blog-Seiten aber konfiguriert werden.<\/li>\n<\/ul>\n<p>Was auf den ersten Blick genial erscheint, erwies sich f\u00fcr mich aber im Endeffekt als Pferdefu\u00df.<\/p>\n<ul>\n<li>Plugins brauchen zwar nur einmal installiert zu werden, m\u00fcssen aber in der Netzwerkverwaltung aktiviert und ggf. aktualisiert werden.<\/li>\n<li>Es gibt immer wieder Plugins, die keinen Multisite-Betrieb zulassen oder einfach Probleme bereiten.<\/li>\n<li>Geht etwas bei einem Blog schief (z.B. Update, Plug-In-Aktualisierung), wirkt sich dies ggf. auf alle Blogs aus.<\/li>\n<\/ul>\n<p>In meiner HostEurope-Umgebung lief es darauf hinaus, dass eine WordPress-Installation unter <em>borncity.com<\/em> lag, w\u00e4hrend eine zweite Installation unter <em>borncity.com\/blog<\/em> zu finden war. Kam es zu Problemen, z.B. bei einem streikenden Plugin, und ich musste per FTP eingreifen, war immer das R\u00e4tselraten, wo der Ordner f\u00fcr die Installation zu finden ist.<\/p>\n<p>Mein gr\u00f6\u00dftes Problem war aber, dass mit irgend einem WordPress-Update die Verbindung vom Windows Live Writer (WLW) mit der <em>xml-rpc<\/em>-Schnittstelle des Multisite-Blogs gekappt wurde. Mit dem WLW habe ich die letzten 15 Jahre meine Blog-Beitr\u00e4ge offline verfasst und dann in den Blogs publiziert. Dazu waren die Blog-Zug\u00e4nge im WLW konfiguriert.<\/p>\n<p>Das Publizieren \u00fcber die <em>xml-rpc<\/em>-Schnittstelle ist zwar sicherheitstechnisch unsch\u00f6n, weil es \u00fcber eine ungesicherte http-Verbindung passiert. Aber es war sehr komfortabel, einen Blog-Beitrag auf Deutsch im WLW zu verfassen, im IT-Blog zu publizieren, dann den Text in Englisch zu \u00fcbersetzen und dann diese Variante per WLW im englischsprachigen Blog zu ver\u00f6ffentlichen. Im WLW hatte ich zudem zwei Plug-Ins, die mir die Zeichenzahl eines markierten Beitragsbereichs anzeigte sowie das Einf\u00fcgen von Code-Schnipseln erm\u00f6glichte. Die Beitragsbilder am Artikelanfang werden so per Template im Blog eingef\u00fcgt.<\/p>\n<p>Aber wie erw\u00e4hnt: Das funktionierte pl\u00f6tzlich, nach einem WordPress-Update nicht mehr. Wie so oft im Blogger-Leben bekam ich von Kollegen, als ich \"funktioniert nicht mehr\" berichtete, die R\u00fcckmeldung \"funktioniert hier sehr wohl\" als Feedback. Meine Vermutung:\u00a0Konnte an meiner HostEurope-L\u00f6sung liegen, wo Konfigurationsdateien sich gegenseitig beeinflussten und m\u00f6glicherweise Probleme bereiteten.<\/p>\n<p>Als ich dann mein Konto bei all-inkl.com eingerichtet habe, gab es die Gelegenheit, unter der Domain <em>borncity.eu<\/em> einen Multisite-Blog zum Testen aufzusetzen. Schon nach wenigen Minuten war klar: Ein Einzelblog funktioniert mit dem Windows Live Writer, ein Multisite-Blog nicht. Die Implementierung des WLW gibt das nicht her.<\/p>\n<p>Und weil es gefragt wurde: Der Open Live Writer (OLW) hilft auch nicht, der streikt genau so, hat aber weitere Nachteile. So wurde im OLW nie eine Plugin-Schnittstelle implementiert. Daher konnte ich meine Hilfs-Plugins aus dem WLW nicht verwenden. Zudem ist die WLW-Rechtschreibpr\u00fcfung im OLW aus Lizenzgr\u00fcnden entfallen. Dort setzt man auf die Rechtschreibpr\u00fcfung, die ab Windows 10 verwendet wird. Aus diesem Grund kam der Open Live Writer hier nie zum praktischen Einsatz.<\/p>\n<p>Es gibt zwar <a href=\"http:\/\/www.blogdesk.org\/de\/\" target=\"_blank\" rel=\"noopener\">BlogDesk<\/a> als Client f\u00fcr Windows, der sogar mit einem Multisite-Blog unter WordPress funktioniert &#8211; zumindest als ich es zum letzten Mal getestet habe. Aber ich bin nie mit Blog-Desk warm geworden &#8211; der Windows Live Writer war um Klassen komfortabler.<\/p>\n<p>Ich hatte vor einiger Zeit mal den groben Gedanken, auch den IT-Blog hier mit in den Multisite-Blog umzuziehen, habe das aber (wegen der Windows Live Writer-Problematik) nie praktisch umgesetzt.\u00a0Nach den oben erw\u00e4hnten Tests und den gerade geschilderten Erfahrungen war klar: Es wird am neuen Standort keinen Multisite-Blog mehr geben.<\/p>\n<p>Ironie des Schicksals: Die Windows Live Writer-Problematik hat sich inzwischen erledigt. Denn beim neuen Hoster habe ich f\u00fcr <em>borncity.com<\/em> eine Option\u00a0<em>https erzwingen<\/em> aktiviert. Damit kann der Windows Live Writer nicht mehr (per http) auf die <em>xml-rpc<\/em>-Schnittstelle eines Blogs (egal ob Einzelblog oder Multisite-Blog) zur\u00fcckgreifen.<\/p>\n<p>Aber ich habe mich dazu entschlossen, die Blogs in Einzelblogs aufzuteilen. Daf\u00fcr gab es am Ende des Tages folgende Gr\u00fcnde:<\/p>\n<ul>\n<li>Ich wollte weg von der alten Struktur, dass im Hauptverzeichnis von <em>borncity.com<\/em> eine WordPress-Installation f\u00fcr einen Multisite-Blog, und im Unterverzeichnis\u00a0<em>blog<\/em> die WordPress-Installation f\u00fcr den IT-Blog lag.<\/li>\n<li>Es war mir zum Schluss nicht mehr m\u00f6glich, in den Blogs Caching-Plugins einzusetzen. Das war zwar lange Zeit mit dem LightSpeed Cache-Plugin kein Thema. Aber die Probleme mit PHP hatten mich Ende 2023 gezwungen, das Plugin rauszuwerfen und auf <a href=\"https:\/\/de.wordpress.org\/plugins\/wp-fastest-cache\/\" target=\"_blank\" rel=\"noopener\">WP Fastest Cache<\/a> zu setzen (war das einzige Plugin, welches auf Anhieb funktionierte). Aber das Cache-Plugin funktionierte nur f\u00fcr den IT-Blog &#8211; eine zweite Instanz im Multisite-Blog verursachte Probleme.<\/li>\n<\/ul>\n<p>Heute bin ich ganz froh, das LightSpeed Cache-Plugin gekickt zu haben &#8211; das Plugin ist die letzten Monate durch mehrere fette Sicherheitsl\u00fccken aufgefallen, die eine Site-\u00dcbernahme erm\u00f6glichten.<\/p>\n<p>Ich hatte dann noch mit Blog-Leser Thomas, der einige WordPress-Installationen betreut, kurz Kontakt und ihn gefragt, was er von Multisite-Blogs h\u00e4lt. Die Antwort \"Nix, ist ein Rabbit-Hole, gibt nur Probleme\". Best\u00e4rkte mich im Entschluss, beim Umzug der Blogs den Multisite-Blog auf Einzelblogs aufzutrennen.<\/p>\n<h2>Wie trennt man eine Multisite in Einzelblogs auf?<\/h2>\n<p>An dieser Stelle stand ich vor der Frage: \"Wie kommst Du auf all-inkl.com zu sechs Einzelblogs und einer Startseite\". Die alte Startseite war ebenfalls als Blog im Multisite-Blog implementiert.<\/p>\n<p>Der letzte Punkt war vermeintlich schnell gel\u00f6st: Ist habe schlicht den Inhalt der Startseite von <em>borncity.com<\/em> in eine HTML-Datei exportiert und das Ganze dann auf den neuen Webserver hochgeladen, wo es unter\u00a0<em>borncity.com\u00a0<\/em>erreichbar ist. Dadurch habe ich mir zwar einige andere Probleme eingefangen, die ich nun schrittweise korrigieren muss (z.B. Suchfeld geht nicht mehr, die Contentpass-Integration fehlt etc.). Aber ich hatte so die M\u00f6glichkeit, f\u00fcr jeden Einzelblog die WordPress-Installation in ein Unterverzeichnis wie\u00a0<em>blog<\/em>,\u00a0<em>win<\/em> etc. zu verlagern.<\/p>\n<p>Der IT-Blog unter\u00a0<em>borncity.com\/blog<\/em> machte diesbez\u00fcglich auch keine Probleme, lag er doch als Einzelblog unter dieser URL auf HostEurope vor. Ich habe dann im betreffenden Ordner eine WordPress-Instanz neu installieren lassen und dann diese Instanz f\u00fcr den Datenbank-Zugriff f\u00fcr eine vorhandene Datenbank konfiguriert. Nachdem ich die fehlenden Plugins nachinstalliert hatte, lief dieser Blog &#8211; ich habe das Ganze vor dem Umzug unter <em>borncity.eu\u00a0<\/em>getestet.<\/p>\n<p>Bei der Aufteilung der Multisite-Blogs in Einzelblogs habe ich mir aber in den Fu\u00df geschossen. Ich hatte die \"geniale\" Idee: Setze eine WordPress-Installation im gew\u00fcnschten Unterordner auf, und konfiguriere die <em>wp-config.php<\/em> so, dass diese auf die Tabellen des jeweiligen Blogs in der gemeinsamen Datenbank zeigt. Bei Multisite-Blogs gibt es eine Datenbank, die die Benutzer enth\u00e4lt und f\u00fcr jeden Einzelblog einen Satz mit den Datenbank-Feldern f\u00fcr diesen Blog.<\/p>\n<p>Das Aufsetzen war auch binnen weniger Minuten samt WordPress-Installation erledigt. Als ich den ersten Blog unter der URL <em>borncity.com\/win<\/em> im Browser aufrief, erschien sofort der Inhalt des englischen IT-Blogs. Ich hatte den \"Boris Becker\"-Moment \"das ist ja einfach\". Das lange Gesicht gab es, als ich mich als Administrator an diesem Blog anmelden wollte. Meine Zugangsdaten wurden nicht akzeptiert &#8211; diesen Benutzer gibt es nicht, hie\u00df es.<\/p>\n<p>Nach einigen Sekunden nachdenken war klar, was passiert war: Ich hatte zwar \u00fcber die <em>wp-config.php\u00a0<\/em>die richtige Tabelle in der Datenbank konfiguriert. Diese enthielt aber keine Eintr\u00e4ge f\u00fcr Administratoren und Benutzer, weil diese zentral f\u00fcr alle Multisite-Blogs in eigenen Tabellenfeldern gehalten wurden.<\/p>\n<p>Ich hatte kurz den Gedanken: Kopiere die betreffenden Informationen in\u00a0<em>phpAdmin\u00a0<\/em>in neue Fehler der betreffenden Teiltabelle, hab das aber verworfen. Denn das Ganze ist ein \"Rabbit-Hole\" &#8211; Du frickelst \u00fcber Stunden und kriegst es doch nicht zum Laufen. Eine bessere L\u00f6sung musste her. Da gibt es doch so tolle Plugins, von denen die \"Tippgeber unter den Lesern doch so geschw\u00e4rmt haben\".<\/p>\n<p>Eine Pleite kommt selten alleine. Das\u00a0<em>Duplicator-Migration<\/em>-Plugin hatte ja bereits beim Umzug des IT-Blogs gepatzt (das Teil machte wegen der Datenbankgr\u00f6\u00dfe einfach die Gr\u00e4tsche und meinte \"Du brauchst die Pro-Version, damit es vielleicht klappt\"). Beim Multisite-Blog kam dann die Information \"Umzug eines Multisite-Blogs in eine Single-Site-Installation wird nur in der Pro-Version unterst\u00fctzt\". H\u00e4tte das Duplicator-Plugin den Umzug des IT-Blogs gewuppt, h\u00e4tte ich an der Stelle die Pro-Version gekauft. Aber so? H\u00e4tte, h\u00e4tte, Fahrradkette. Zwei, drei weitere Migrations-Plugins, die ich kurz getestet habe, erwiesen sich ebenfalls als Nieten.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i.postimg.cc\/V5Q4M9T5\/image.png\" alt=\"Migrate-Plugin\" width=\"640\" height=\"390\" \/><\/p>\n<p>Am Ende habe ich das in obigem Screenshot abgebildete Migrate-Plugin \"Prime Mover\" in der Free-Version benutzt, um die Plugins, Layouts und Inhalte der einzelnen Blogs aus dem Multisite-Blog zu exportieren und im Anschluss im jeweils neue aufgesetzten Single-Site-WordPress-Blog zu importieren.<\/p>\n<p>Das klappte bei allen Multisite-Blogs wunderbar. Lediglich ein OpenGraph-Plugin (OG) machte Probleme. Nach dem Import stand mein Staging-Blog, den ich unter <em>borncity.eu<\/em> aufgesetzt hatte. Aber es gab die Meldung, das Plugin OK hat den Blog abgeschossen und ich konnte das Plugin per FTP jeweils l\u00f6schen. Sp\u00e4ter habe ich das Plugin vor dem Export bereits deinstalliert und am neuen Startort reinstalliert bzw. bin im zweiten Schritt auf ein anderes Plugin gewechselt.<\/p>\n<p>Wo ich dann manuell eingreifen musste, war bei den Mediendateien (Bilder). Diese waren wohl nicht in den neuen Blog \u00fcbertragen worden. Die habe ich dann aus einer Sicherung des alten Blog-Auftritts aus dem tar-Archiv extrahiert und per WinSCP in den korrespondierenden Ordner der WordPress-Installation hochgeladen.<\/p>\n<p>Als alle Blogs unter <em>borncity.eu\u00a0<\/em>als Staging-Varianten standen, habe ich die WordPress-Dateien f\u00fcr den IT-Blog in das Verzeichnis f\u00fcr die geplante Domain <em>borncity.com\/blog\/ <\/em>kopiert und dann den in Teil 1 skizzierten Domain-Umzug angesto\u00dfen.<\/p>\n<p>Es gab zwar kleinere Anpassungsprobleme, weil ich in der <em>wp-config.php <\/em>erst ein falsches Datenbank-Passwort eingetragen hatte. Es gab daher beim Aufruf des Blogs einen Datenbankfehler. Und als ich das korrigiert hatte, meldete sich der Blog mit einem Setup-Dialog, den einzelne Leser zu sehen bekamen. Ich habe sofort den Tabellen-Alias, der auch falsch hinterlegt war, in der <em>wp-config.php<\/em> korrigiert, so dass die Blog-Inhalte angezeigt wurden.<\/p>\n<p>Falls jemand sich Gedanken macht, dass die kurzzeitige Anzeige des Setups ein Sicherheitsproblem darstellt: Das trifft imho nicht zu, da au\u00dfenstehende nicht den Alias f\u00fcr die bestehende Datenbank kennen. Selbst wenn ein Dritte auf die Schnelle WordPress aufgesetzt h\u00e4tte &#8211; sp\u00e4testens nach der Anpassung der <em>wp-config.php <\/em>w\u00e4re der Zugriff gestoppt worden. Und ich w\u00fcrde im phpAdmin die so angelegten Tabellenfelder sehen.<\/p>\n<p>Im Anschluss habe ich dann die restlichen Blogs von <em>borncity.eu<\/em> zu <em>borncity.com<\/em> umgezogen &#8211; es waren im Grunde nur die Dateien auf dem Hosting-Paket in ein neues Verzeichnis kopieren und die <em>wp-config.php <\/em> anzupassen.<\/p>\n<p>Ach ja, einen kleinen Nachteil gab es (neben dem Umstand, dass ich mich nun in mehreren Blogs anmelden muss): Ein von mir lizenziertes Plugin, welches in zwei Blogs eingesetzt werden darf, war im Anschluss wegen Lizenzverbrauchs nicht mehr verwendbar. Ich habe dann eine Business-Lizenz f\u00fcr 50 Sites gekauft, so dass ich sogar noch einige Blogs f\u00fcr weitere spinnerte Ideen aufsetzen k\u00f6nnte.<\/p>\n<h2>Mobil-Darstellung und Sonstiges<\/h2>\n<p>Ein Problem, mit dem ich mich in den letzten Jahren herum geschlagen habe, war die von den Lesern gew\u00fcnschte Mobilger\u00e4te-Darstellung. Das von mir f\u00fcr die Blogs verwendete Template TwentyTen gibt keine responsive Anzeigen f\u00fcr Mobilger\u00e4te her. Es gibt in WordPress zwar Vorlagen \"wie Sand am Meer\", die auch ein responsives Design unterst\u00fctzen. Ich habe in den letzten Jahren immer mal wieder solche Vorlagen getestet und viele Tage \"verbraten\".<\/p>\n<h3>Mobilger\u00e4tedarstellung als Speziall\u00f6sung<\/h3>\n<p>Problem ist schlicht, dass die Designer sich verk\u00fcnsteln &#8211; keine der Vorlagen passte. Die jeweiligen Blogs sollten vom Text gut lesbar sein, die Kommentare vern\u00fcnftig abbilden, das alte Layout weitgehend widerspiegeln und die bestehenden Inhalte m\u00fcssen sauber angezeigt werden. Daran ist es immer gescheitert &#8211; was n\u00fctzt mir ein tolles TwentyTwenty-Four-Layout, welches den Blog-Editor in WordPress unterst\u00fctzt, mein Layout aber verhunzt? Irgend ein TwentySixteen-Layout sah zwar in vielen Belangen gut aus, verbriet mir aber durch eine Design-Volte, wo das Artikelbild und das Datum der Ver\u00f6ffentlichung links neben den Anrei\u00dfertext gestellt wurde, viel freien Platz. Bei anderen Designs stimmte gar nichts mehr, bei anderen Templates hakte es von der Kommentardarstellung, und, und, und.<\/p>\n<p>In der Vergangenheit hatte ich eine Notl\u00f6sung. F\u00fcr die Mobilger\u00e4tedarstellung wurde das Template RCG Forest mit den gr\u00fcnen Schriften verwendet, ein Switcher-Plugin schaltete zu diesem Template um, sobald ein Mobilger\u00e4t entdeckt wurde.<\/p>\n<p>Im Rahmen des Umzugprojekts hatte ich die Problematik des fehlenden responsive Designe f\u00fcr das Template TwentyTen erw\u00e4hnt. Blog-Leser Thomas Kessler meldete sich darauf hin und bot mir eine von ihm geschriebene Erweiterung an, der TwentyTen responsive macht (nochmals danke daf\u00fcr). Nach einigen Tests habe ich diese Erweiterung in den Blogs verwendet und konnte auf das Switcher-Plugin verzichten.<\/p>\n<blockquote><p>Erg\u00e4nzung: Thomas hat in den nachfolgenden Kommentaren darauf hingewiesen, dass die Erweiterung allgemein zur Verf\u00fcgung steht. Man kann sich die als Plugin realisierte Erweiterung unter <a href=\"https:\/\/www.kessler-design.com\/responsive-twenty-ten\/\" target=\"_blank\" rel=\"noopener\">Responsive Twenty Ten<\/a> herunterladen. Ist in meinen Augen eine klasse Arbeit &#8211; mir hat die Erweiterung \"eine Baustelle\" abger\u00e4umt.<\/p><\/blockquote>\n<p>Thomas hat mir zudem noch einige CSS-Anweisungen geschickt, um bestimmte Probleme mit Kommentarschachtelungen oder einen Bug im Kommentareditor zu korrigieren. Hier die CSS-Erg\u00e4nzungen, die ich unter\u00a0<em>Design &#8211; Customizer &#8211; Zus\u00e4tzliches CSS <\/em>aktuell im Blog verwende:<\/p>\n<pre>\/* Kommentare nummerieren*\/\r\n\/*\r\nli.depth-1 {\r\nlist-style-type: decimal;\r\ndisplay: list-item;\r\nposition: relative;\r\nleft: 10px;\r\nbottom: 10px;\r\npadding: 10px;\r\n} *\/\r\n\/* Webseite in Kommentar raus *\/\r\n.comment-form-url{\r\ndisplay:none;\r\n}\r\n\/* Durchgestrichene Links normal darstellen *\/\r\n.broken_link, a.broken_link {\r\ntext-decoration: underline;\r\n}\r\n\r\n\/* generell weniger einruecken bei kommentar antworten, desktop und mobil *\/\r\n.commentlist li.comment {\r\npadding-left: 5%;\r\n}\r\n@media screen and (max-width: 660px) {\r\n\/* kein einruecken bei der ersten kommentar ebene bei mobil *\/\r\n.commentlist &gt; li.comment {\r\npadding-left: 0;\r\n}\r\n}\r\n\/* bug fix fuer plugin simple-comment-editing *\/\r\n.sce-comment-text {\r\nwidth: 100%;\r\nmargin-right: 10px;\r\nbox-sizing: border-box;\r\n}<\/pre>\n<p>Die beiden letzten Bl\u00f6cke sind von Thomas &#8211; die ersten CSS-Anweisungen verwende ich, um ggf. Kommentare tempor\u00e4r durchzunummerieren (bei der Auslosung von Gewinnspielen hilfreich), das Feld \"Webseite\" bei Kommentaren auszublenden oder gebrochene Links nicht durchgestrichen anzeigen zu lassen.<\/p>\n<p>Was ich noch erledigen muss: In der Mobildarstellung die am Seitenende angeklatschte Seitenleiste des Desktop so anpassen, dass nur noch einige relevante Eintr\u00e4ge auf Mobilger\u00e4ten auftauchen.<\/p>\n<h3>Verlinkungen und Plugins<\/h3>\n<p>Nach der Aufsplittung des Multisite-Blogs samt Umzug der Domains blieb mir noch, die restlichen Blogs von <em>borncity.eu<\/em> auf <em>borncity.com<\/em> umzubiegen, sowie diverse Verlinkungen zu korrigieren. Hier gibt es noch kleinere Baustellen, da ich die Startseite als statisch aufgesetzt habe.<\/p>\n<p>Zudem stehen noch kleinere Anpassungen am Seitendesign und in Richtung \"Sicherheit, SEO-Kompatibilit\u00e4t\" auf der Agenda.<\/p>\n<h3>Neue Blogging-Umgebung<\/h3>\n<p>Hinter den Kulissen gibt es noch einige weitere kleinere \u00c4nderungen. So habe ich ein Plugin, welches SSL bzw. https im Blog erzwingt, rauswerfen k\u00f6nnen, weil ich im Webpaket <em>SSL erzwingen<\/em> f\u00fcr die Domain vorgeben kann. Nebeneffekt: Ich kann den Windows Live Writer nicht mehr zum Bloggen verwenden.<\/p>\n<p>Das letztgenannte Problem habe ich f\u00fcr mich dergestalt gel\u00f6st, indem ich den WordPress Gutenberg-Blog-Editor deaktiviert habe. Dadurch wird der klassische Editor erzwungen. Dieser wurde mit dem Plugin <em>Advanced Editor Tools<\/em> aufgebohrt (ich kann Bilder komfortabel einbinden und habe eine Suchen &amp; Ersetzen-Funktion). Hinzu kommt ein Plugin, welches mir die Zeichenzahl eines Beitrags anzeigt (brauche ich f\u00fcr die VGWort) sowie ein Plugin <em>Post Snippets<\/em>, mit dem ich meine im Windows Live Writer gewohnten Code-Bl\u00f6cke in einem Beitrag einf\u00fcgen kann.<\/p>\n<p>Mit diesen Ma\u00dfnahmen kann ich komfortabel online im Browser per WordPress-Adminbereich im Classic-Editor bloggen. Die Rechtschreibpr\u00fcfung \u00fcbernimmt der Browser &#8211; und ich kann auch unter Linux bloggen (heute testweise probiert).<\/p>\n<h3>WordFence ist raus<\/h3>\n<p>Was ist noch anzumerken? Ich habe einige Plugins zur Spam-Abwehr sowie zur Absicherung der Blogs laufen. Das Plugin <em>WordFence<\/em> mit Web-Firewall und \u00dcberwachung auf Aktualisierungen oder Ver\u00e4nderungen an den Blog-Dateien habe ich rausgeworfen. Warum? Einmal gab es beim \"ersten Schuss\" meines Umzugsversuchs des IT-Blogs ja das Problem, dass die Blogs auf den alten \"HostEurope\"-Webspace zeigten. Der all-inkl-Supporter meinte: Da sind WordPress-Reste im Dateisystem, werfen Sie das Plugin raus, exportieren Sie neu und setzen Sie alles neu auf. Andernfalls wird das nie was. Auch Thomas gab mir den Ratschlag \"WordFence vor dem Umzug rauszuwerfen\".<\/p>\n<p>Ich h\u00e4tte am neuen Standort WordFence wieder mit rein nehmen k\u00f6nnen, habe mich aber aktuell aus mehreren Gr\u00fcnden dagegen entschieden. WordFence ist zwar f\u00fcr die meisten Nutzer \"narrensicher\", hat mir aber einige Nachteile beschert:<\/p>\n<ul>\n<li>Das Plugin greift in die <em>.htaccess<\/em> ein und setzt dort Regeln, die dann Kollateralsch\u00e4den mit anderen Plugins verursachen k\u00f6nnen. Beim alten HostEurope-Auftritt hatte ich immer eine funktionsf\u00e4hige Notfall <em>.htaccess\u00a0<\/em>auf der Festplatte, um diese bei streikendem Blog per FTP schnell hochzuladen. Ist mir sicher ein halbes Dutzend mal passiert, dass der Blog nach Plugin-Updates oder \u00c4nderungen nicht mehr aufrufbar war.<\/li>\n<li>WordFence nervte mich immer h\u00e4ufiger mit Fehlalarmen und monierte infizierte WordPress-Dateien. Es handelte sich dabei aber um Cache-Inhalte, wo Blog-Beitr\u00e4ge von mir Texte wie \"hacked by\" enthielten, die von WordFence aber als gehackte Dateien interpretiert wurden. Auch wurden mir oft Plugins als manipuliert angezeigt, wo eine Kontrolle dann\u00a0 ergab, dass der Plugin-Autor im PHP-Code nur die Version ge\u00e4ndert hatte, dies von WordFence aber nicht registriert wurde.<\/li>\n<li>Zudem hatte ich irgendwo in einem Test gelesen, dass WordFence einige Datenbankverbindungen offen h\u00e4lt, was zu Ressourcen-Problemen f\u00fchren kann.<\/li>\n<\/ul>\n<p>Auf Facebook war mir vor Jahren bereits ein Thread von Daniel Ruf untergekommen, der argumentiert, bei Kunden aus Performance-Gr\u00fcnden kein WordFence mehr einzusetzen. Vielmehr setzt er auf die Ninja-Firewall sowie weitere Ninja-Tools (so lasse ich deren Virenscanner sporadisch mitlaufen). Daniel Ruf hat eine <a href=\"https:\/\/magos-securitas.com\/downloads\/\" target=\"_blank\" rel=\"noopener\">Konfigurationsanleitung<\/a> f\u00fcr Ninja Firewall ver\u00f6ffentlicht, an dem ich mich f\u00fcr die Konfigurierung orientiert habe. Ich werde aber einige Event-Benachrichtigungen per E-Mail abdrehen, da die Mails beim aktualisieren von Plugins etc. bei mehreren Blogs nerven.<\/p>\n<h3>Was noch?<\/h3>\n<p>Aktuell fahre ich die Blogs alle ohne Caching-Plugin &#8211; lediglich ein OP-Cache wurde vom Hoster auf dem Webserver standardm\u00e4\u00dfig eingeschaltet. Ngix-Cache gibt es nicht, da kein ngix-Server vom Hoster verwendet wird.<\/p>\n<p>Die Blogs laufen aktuell smoother als beim alten Hoster. Ich habe allerdings gelegentlich einige \"Gedenksekunden\" im Frontend bemerkt. Hier teilte mir der all-inkl-Support mit, das ich wohl das\u00a0FPM-Limit erreiche und legte mir eine .log-Datei f\u00fcr lange laufende Scripte an.<\/p>\n<p>Dort habe ich gesehen, dass das Plugin Broken Link Checker diese Aussetzer mutma\u00dflich verursacht, weil die Pr\u00fcfung auf kaputte Links sehr Ressourcen-intensiv ist. Nachdem ich gebrochene Links korrigiert habe, ist das Plugin deaktiviert und wird nur noch sporadisch laufen.<\/p>\n<p>Die Statistiken f\u00fcr Besucher und Seitenabrufe werden \u00fcbrigens durch Plugins lokal gehalten. Auf die Vorschaltung von CloudFlare, wie mal von Lesern diskutiert, m\u00f6chte ich verzichten bzw. werde das ohne Not nicht mit rein nehmen.<\/p>\n<p>Ich m\u00f6chte in den kommenden Tagen und Wochen noch einige Details \u00e4ndern, einige kleine \u00c4nderungen vornehmen, noch einige Sicherheitserg\u00e4nzungen und -tests vornehmen und hoffen, dass die Blogs dann \"Strich laufen\". Unter dem Strich sind beim Umzug durch das Neuaufsetzen der Blogs Dateileichen entfernt worden. Auch die Datenbanken habe ich von Leichen, die Plugins hinterlassen haben, bereinigt.<\/p>\n<p>Die neue Struktur erm\u00f6glicht mir auch, progressiver mit einzelnen Blogs umzugehen &#8211; eine Fehlkonfigurierung betrifft nur noch einen Blog. Zudem habe ich nun die Chance, bestimmte Blogs mittelfristig auf <em>borncity.eu<\/em> zu verschieben. Und 10 Euro\/Monat g\u00fcnstiger als bei HostEurope ist das Ganze bei all-inkl.com momentan auch geworden. Dass deren Support um Klassen besser als bei HostEurope ist, hatte ich ja bereits in Teil 1 erw\u00e4hnt.<\/p>\n<p>Damit beende ich den Bericht aus dem Maschinenraum. Die Schilderungen verdeutlichen, dass es nicht mal eben zwei Mausklicks ben\u00f6tigte, um die Blogs umzuziehen. Sondern es wurden im Maschinenraum einige Umbauma\u00dfnahmen vorgenommen. Pers\u00f6nlich habe ich \u00fcber diesen Umzug einiges gelernt und habe hoffentlich einige Altlasten durch den Umbau samt Bereinigung der Datenbank um Leichen, verursacht durch Plugins, beseitigen k\u00f6nnen.<\/p>\n<p><strong>Artikelreihe:<\/strong><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2024\/09\/30\/blog-umzug-insides-aus-dem-maschinenraum-teil-1\/\">Blog-Umzug: Insights aus dem Maschinenraum \u2013 Teil 1<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2024\/10\/07\/blog-umzug-insights-aus-dem-maschinenraum-teil-2\/\">Blog-Umzug: Insights aus dem Maschinenraum &#8211; Teil 2<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Teil 1 meiner zwei Blog-Beitr\u00e4ge hatte ich dargelegt, warum ich meinen IT-Blog und weitere Blogs in den letzten Wochen vom Anbieter HostEurope zu All-Inkl umgezogen habe. Der Umzug ist (bis auf Feintuning) weitgehend abgeschlossen. Ich hatte noch einige Insights &hellip; <a href=\"https:\/\/borncity.com\/blog\/2024\/10\/07\/blog-umzug-insights-aus-dem-maschinenraum-teil-2\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[4293],"class_list":["post-305004","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-allgemein"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/305004","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=305004"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/305004\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=305004"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=305004"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=305004"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}