WordPress Bilder Upload schlägt immer wieder fehl – Die Verarbeitung des Bildes ist fehlgeschlagen

Wenn du seit dem Upgrade auf WordPress 6.2 beim Upload mehrerer Bilder diesen Fehler siehst:

“Die Verarbeitung des Bildes ist fehlgeschlagen. Der Server ist möglicherweise ausgelastet oder hat nicht genügend Ressourcen zur Verfügung. Eventuell hilft es, wenn du ein kleineres Bild hochlädst. Die vorgeschlagene Maximalgröße ist 2500 Pixel.”

dann kann das Problem realtiv einfach gelöst werden. In der Regel liegt es daran, dass php eine zu kurze maximale Laufzeit eingestellt bekommen hat. Du kannst den Wert für “max_execution_time” einfach höher setzen (ich habe mal 300 genommen), und damit erledigt sich das Problem.

Das kannst du entweder direkt über die php.ini Datei machen, oder aber (beim Einsatz von Apache2 als Webserver) per htaccess, evtl sogar direkt in der wp-config.php. Der maximale Wert wird allerdings von deinem Hoster festgelegt. Evtl musst du also mit dem Support Kontakt aufnehmen.

Falls du das offizielle WordPress Docker Image verwendest, dann geht es relativ einfach:

Lege eine datei wordpress.ini mit den Anpassungen an, die du in der php.ini gerne machen möchtest:

file_uploads = On
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
max_input_time = 1000

Das mal als Beispiel.

Beim Docker run command mountest du diese Datei dann einfach in den Pfad “/usr/local/etc/php/conf.d/” innerhalb des Containers, also z.B. so:

docker run -d -p 8080:80 \
-v ./wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini \
-e WORDPRESS_DB_HOST="db:3306" \
-e WORDPRESS_DB_PASSWORD="P@ssw0rd2" \
wordpress

Diese direktiven in der ini Datei überschreiben dann die Default-Werte, die in der php.ini gesetzt wurden.

WordPress zeigt nur die Überschriften, aber nicht den Artikel Inhalt / Content an

Bei einem Umzug von WordPress hatte ich auf einmal das Phänomen, dass die Seite an sich wunderbar funktionierte, jedoch nur die Blog Post Überschriften und nicht den Content anzeigte.

Komischerweise war der Content beim Bearbeiten des Artikels vorhanden, also tippte ich erst auf das Template. Da ich jedoch ein WordPress Default Template in Verwendung hatte, konnte das schnell ausgeschlossen werden.

Die Lösung brachte dann der allgemeine WordPress Universal-Tip: Alle Plugins deaktivieren und dann einzeln wieder anschalten. Und siehe da, das (leider) komplett veraltete “wp-slimbox-reloaded” hatte den Fehler verursacht. Irgendwie hat es den Render-Prozess des Artikel Contents zerschossen. Sobald ich das Plugin deaktiviert hatte, lief die Seite wieder wie gewohnt 🙂

Ein WordPress Blog still legen und archivieren

Der Bytelude ist nun bereits mein dritter Blog. Zuerst war da mein selbst geschriebenes CMS mit integriertem Blog, und anschließend kam eine WordPress Variante. Irgendwann war die Situation etwas fest gefahren und so beschloss ich, nochmal einen dritten Anlauf zu wagen. Dabei herausgekommen ist bytelude.de. Und da ich es selbst nicht leiden kann, dass Google Suchergebnisse ins Leere führen, sind die anderen beiden natürlich weiterhin aktiv. Bei der selbstgeschriebenen Variante ist das nicht weiter tragisch, da ich das CMS trotzdem aktiv pflege und es extrem wenig Ressourcen benötigt. Bei WordPress sieht das schon anders aus. Zum einen muss man es immer auf dem aktuellsten Stand halten und zum anderen frisst es bei jedem Aufruf ziemlich viele Ressourcen. Nach ein paar Google Suchanfragen bin ich dann auf die Idee gekommen, dass man WordPress ja auch einfach in eine statische Seite konvertieren kann.

Gesagt getan, und ich bin auf folgende zwei Tutorials gestoßen:

Convert WP to static html

How to retire a wordpress blog

Die erste Anleitung hat bei mir leider nicht richtig funktioniert, enthält aber den wichtigen Teil der Vorbereitung. Kurz gesagt: man sollte die Seite auf Permalinks umstellen. Das sinnvollste Format ist “/jahr/monat/post-name/”. Die Permalinks sind notwendig, da sonst immer nur Dateien wie “index.php?parameter=value…” abgespeichert werden. Der Aufruf im Browser funktioniert dann natürlich nicht korrekt und man bekommt eine Menge Fehler.

Und hier der Code in Kurzform:
Permalinkstruktur folgendermaßen einstellen:

"/%year%/%monthnum%/%day%/%postname%/"

Anschließend müsst ihr, falls noch nicht vorhanden, die entsprechende .htaccess Datei mit folgendem Inhalt anlegen:

RewriteEngine On
RewriteBase /pfad/zum/wordpress/blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /pfad/zum/wordpress/blog/index.php [L]

Und schon kommen wir zum 2. Tutorial. Dort wird dann der entscheidende wget Befehl erklärt. Vorher wird noch darauf hingewiesen, dass man die Trackback und xmlrpc.php links aus dem gewählten Theme entfernen sollte. Andere Blogs versuchen sonst Trackbacks zu senden, da diese ja im HTML Code hinterlegt sind.

Nachdem das erledigt ist, hier nun der finale wget Befehl:

wget -r -E -T 2 -np -R xmlrpc.php,trackback -k http://[BLOG URL]

Führt diesen Code in einem extra Ordner aus. Es wird automatisch ein Ordner mit eurer Blog-URL angelegt, darin ist dann die komplette Seite enthalten.

Wget fängt nun auf eurer Hauptseite an, diese in Form einer index.html abzuspeichern. Evtl. verlinkte CSS Dateien und Javascript Files werden in der gleichen Ordnerstruktur wie auf eurem Server heruntergeladen und abgespeichert. Dieser Vorgang wird nun für alle auf der Seite gefundenen Links wiederholt. Durch die Permalink Struktur werden nun die einzelnen Blog-Beiträge in der Form /Jahr/Monat/Titel/index.html abgespeichert.

Wenn der Vorgang abgeschlossen ist, könnt ihr euren WordPress Ordner löschen und an dessen Stelle den heruntergeladenen Ordner (natürlich ohne den Ordner mit eurem Domainnamen) kopieren. Nun sollte eure Seite weiterhin wie gewohnt geladen werden und alle Links funktionieren auch – außer den dynamischen Funktionen wie Kommentare oder dem Admin-Panel. Ihr werdet auch bemerken, dass die Seite nun deutlich schneller lädt und euer Server deutlich weniger belastet wird. Und man muss sich nicht mehr um Updates kümmern 😉

GN2-Hosting – smartes Hosting für jedermann

Dass ihr hier und heute den Byteluden lesen könnt, liegt neben mir zu einem kleinen Teil auch an den netten Leuten von GN2-Hosting, die sich aufgrund meines Sponsoring-Aufrufs über Twitter gemeldet hatten.

Der Deal war: Ich bekomme ein kostenloses Webhosting inkl. Domain für den Blog, dafür schreibe ich nach 2 Monaten Testzeitraum einen objektiven (also nicht gekauften!) Beitrag über den Hoster. Und genau darum geht es in diesem Artikel.

Eine Antwort auf meinen Sponsoring-Aufruf erhielt ich an einem Freitag, am gleichen Tag war auch schon das Hosting samt Domain eingerichtet. Nun kann man ja denken, dass bei so einer PR-Aktion ein bisschen genauer hingeschaut wird bzw. priorisiert wird. Dieses Argument kann ich wiederlegen, da ich GN2-Hosting bereits weiterempfohlen habe und auch bei anderen Leuten die Einrichtung genauso schnell und unkompliziert gelaufen ist.

Übers anschließende Wochenende nahm ich mir die Zeit, ein Logo zu entwickeln und WordPress zu installieren sowie einzurichten. Über den sehr aufgeräumten Kunden-Login konnte ich schnell die nötige Datenbank sowie den FTP-Zugang einrichten, genauso auch entsprechende Email-Adressen. Sehr gut gelöst ist hier meiner Ansicht nach, dass alle Services unter den entsprechenden Subdomains erreichbar sind – der imap-Server also unter imap.domain.de, die Datenbank unter mysql.domain.de usw. Ein ziemlich einfaches, jedoch intuitives System.

Ich hatte bei anderen Hostern bereits das Vergnügen, mit “Plesk” meine Server zu verwalten. Sicher ist damit wesentlich mehr möglich, aber gleichzeitig sind diese Systeme sehr unübersichtlich bzw. kompliziert und sie fressen relativ viel Leistung – und die Seite hängt.

Da sind wir auch schon beim Stichwort: Die Server sind ziemlich schnell. Selbst ohne irgendwelche Caching-Maßnahmen läuft auch das recht aufgeblähte WordPress ziemlich gut. GN2-Hosting verspricht, dass max. 200 Kunden auf einem Server gehostet werden. Die Server sind auf dem neuesten Stand und arbeiten mit Core i7 Prozessoren, was genug Reserven bietet, und hängen mit 10GBit am Netz. Die Systeme sind auf die großen Player im Bereich CMS, Blogsoftware und Shopsysteme optimiert und getestet. WordPress ist einer dieser Kandidaten und ich kann die Leistung nur bestätigen – ihr bemerkt die kurzen Ladezeiten der Seite ja selbst. Neben schnellen und stabilen Servern wird per SLA eine Verfügbarkeit von 99,9% geboten, was noch gut im Rahmen ist – schließlich betragen 0.1% bereits ca. 8-9 mögliche Stunden Downtime im Jahr.

Mein Hostingpaket würde normalerweise 4,50€ im Monat kosten, was ein fairer Preis ist. Hier ist allerdings anzumerken, dass man die Kosten gleich für die ganze Mindestlaufzeit von 12 Monaten bezahlen muss – was dann bei mir also 54€ währen. Einrichtungsgebühren gibt es hier allgemein keine.

In diesem Paket sind 1Gb Webspace, 100Gb Traffic, 1Gb Mailspace, bis zu 50 Subdomains, 15 Datenbanken und eine .de Domain dabei. Neben den standardisierten Paketen sind auf Anfrage auch individualisierte Hostings möglich. Sicher bekommt man ähnliche bzw. bessere Werte bei den großen Hostern wie Strato, Hetzner, 1&1 und co., aber man hat da einen großen Nachteil: man ist nur eine Nummer. Anbieter wie GN2-Hosting punkten vor allem mit ihrem unkomplizierten Umgang, direktem Telefon-, Skype- und IRC-Support sowie Kundennähe. Außerdem kann man auch @gn2hosting followen, da gibt’s die neuesten Statusmeldungen bei Problemen, aber auch mal die eine oder andere Anekdote aus dem Alltag eines Hosters.

Neben dem Hosting kann man natürlich auch seine Domains gleich mitbestellen, allerdings sind hier nur die gängigen Top-Level Domains vertreten: de, at, ch, com, eu, info, net, org und ws. Will man auf andere Top-Level Domains zurückgreifen, kann man anfragen, im Ernstfall muss man diesen Teil jedoch bei anderen Anbietern erledigen. Die Preise für die Domains liegen im Branchen-Durchschnitt. SSL Zertifikate kann man natürlich auch direkt dazu bestellen, wenn nötig.

So, und jetzt habe ich ein Problem. Denn wenn ich selbst diesen Artikel lesen würde, käme mir der Gedanke, dass hier ziemlich positiv berichtet wird. Das Problem ist nun, dass es sich um meine ehrliche Meinung handelt.
Also: Falls ihr auf der Suche nach einem smarten Hoster für euren Blog, Shop oder eure allegmeine Internetseite mit oder ohne CMS seit, schaut doch mal vorbei:

http://www.gn2-hosting.de

Update:
Wie ihr in den Kommentaren sehen könnt, können bald alle weiteren Top-Level Domains gebucht werden…

Twitter auf Facebook Fanpage einbinden

Facebook ist manchmal etwas undurchsichtig – vor allem, wenn es um die sog. Fanpages geht. Auch bytelude.de hat eine eigene Fanpage, die allerdings meinem privaten Facebookprofil untergeordnet ist – Facebook schlägt dies ausdrücklich als den richtigen Weg vor. Naja…

Kommen wir zu meinem Problem: Wenn ich im Blog einen neuen Post veröffentliche, dann wird mittels Twitter-Plugin automatisch ein entsprechender Tweet erstellt. RSS ist den meisten Leuten leider unbekannt, daher ist es als Blogger sinnvoll, auf die neuen Kommunikationskanäle zu setzen. So, jetzt möchte ich aber natürlich auch, dass neben dem Twitter-Account auch die Fanpage über neue Einträge informiert wird. Facebook bietet mir auch gleich an, meine Fanpage mit Twitter zu verknüpfen, allerdings geht das nur in die Richtung Facebook zu Twitter, und nicht umgekehrt. Und genau hier liegt mein Problem.

Bisher bietet Facebook keine wirkliche Lösung an, daher habe ich mich ein bisschen umgesehen und folgendes gefunden:

Twitter auf Facebook Fanpages – eine fast unendliche Geschichte

Das Zauberwort heißt twitterfeed.com.
Ich hoffe, dass es anderen Leuten genauso wie mir hilft 😉

Leider liegt die maximale Frequenz für neue Tweets bei einer halben Stunde – d.h. im ungünstigsten Fall erscheint euer Tweet erst eine halbe Stunde später auf der Fanpage.