Seite 2 - Monthly Archives: August 2025
-
Maxim Mironjuk
-
August 30, 2025
Dass fopen, file_get_contents und file_put_contents nicht nur mit lokalen Pfaden, sondern auch mit Präfixen wie http:// oder php:// umgehen können, liegt an einem einzigen Mechanismus: der Stream-Wrapper-Registry. Wer versteht, wie stream_wrapper_register funktioniert und welche Methoden eine Wrapper-Klasse implementieren muss, kann eigene Protokolle registrieren, sei es für einen Cloud-Speicher oder ein In-Memory-Dateisystem, das Dateizugriff in Unit-Tests ohne echte Festplatte testbar macht.
-
Maxim Mironjuk
-
August 30, 2025
Ohne durchdachte API-Versionierung wird jeder Breaking Change zum Krisenmeeting mit externen Integratoren. In PHP stehen drei etablierte Ansätze zur Auswahl: Versionsnummer in der URI, ein eigener Versions-Header oder Versionierung über den Accept-Header per Content-Negotiation. Welche API-Versionierung passt, hängt von Kundenstruktur, Release-Rhythmus und der Zahl parallel unterstützter Versionen ab.
-
Maxim Mironjuk
-
August 30, 2025
Ein visuell ansprechendes Modal ist nur die halbe Arbeit. Wer Barrierefreiheit nach WCAG 2.1 ernst nimmt, muss Fokus-Management, korrekte ARIA-Rollen und vollständige Keyboard-Navigation implementieren. Alpine.js macht das möglich – ohne jQuery, ohne externe Bibliotheken.
-
Maxim Mironjuk
-
August 29, 2025
Kurzlebige Toast-Meldungen wie „Zum Warenkorb hinzugefügt“ verschwinden oft, bevor ein Screenreader sie überhaupt vollständig vorgelesen hat, und verletzen damit regelmäßig WCAG 2.2.1 zur einstellbaren Anzeigedauer.
-
Maxim Mironjuk
-
August 29, 2025
Ein Magento-Produktivserver ist nur so sicher wie sein am wenigsten gehärteter Dienst. Dieser Artikel zeigt praxisnah, wie sich die Angriffsfläche durch Deaktivieren unnötiger Dienste, automatische Sicherheitsupdates, konsequente Non-Root-Ausführung, korrekte Dateisystemrechte, fail2ban und SSH-Härtung systematisch reduzieren lässt, mit direktem Bezug zum Mark-Shust-Docker-Setup und typischen Debian- oder Ubuntu-Produktivumgebungen.
-
Maxim Mironjuk
-
August 29, 2025
Beim klassischen Seitenwechsel setzt der Browser den Fokus zuverlässig auf den Dokumentanfang. Bei clientseitigem Routing und dynamisch eingeblendeten Modals passiert das nicht von selbst. Wer Fokus nach Navigationswechseln und beim Öffnen und Schließen von Dialogen nicht explizit steuert, macht Single Page Applications für Tastatur und Screenreader faktisch unbedienbar.
-
Maxim Mironjuk
-
August 29, 2025
Wer Produktdaten, Logeinträge oder Sensor-Events in Elasticsearch indexiert, steht regelmäßig vor derselben Frage: Soll die Anwendung die Rohdaten vor dem Senden aufbereiten, oder übernimmt Elasticsearch selbst die Normalisierung, bevor ein Dokument tatsächlich im Index landet? Ingest Pipelines beantworten diese Frage mit einer dritten Option. Eine Kette von Prozessoren wie grok, script oder enrich verarbeitet jedes Dokument direkt beim Schreibvorgang, parst unstrukturierte Strings, wendet individuelle Transformationslogik an und reichert Felder aus externen Referenzdaten an, bevor die eigentliche Indexierung beginnt. Dieser Artikel zeigt, wie diese Prozessoren zusammenspielen, wo die Grenze zur anwendungsseitigen Transformation sinnvoll verläuft und wie eine reale Produktdaten-Normalisierung damit aussieht.
-
Maxim Mironjuk
-
August 29, 2025
Wenn ein Server nach einem Kernel-Panic einfach neu startet, bleibt die eigentliche Ursache im Dunkeln, bis derselbe Absturz erneut passiert. kdump erzeugt beim Kernel-Panic automatisch einen vollständigen Speicherabzug, und das crash-Utility macht diesen vmcore lesbar, mit Backtrace, Prozesszustand und der Stelle im Kernel-Code, an der es geknallt hat.
-
Maxim Mironjuk
-
August 29, 2025
Die Wahl der richtigen Dokumentations-UI für eine REST API ist keine Kleinigkeit – sie beeinflusst, wie schnell sich externe Entwickler in die API einarbeiten, ob Consumer-Teams API-Endpunkte direkt ausprobieren können, und wie viel Aufwand die Integration in die CI-Pipeline kostet. Swagger UI, Redoc, Scalar und Stoplight Elements haben unterschiedliche Stärken und Philosophien.
-
Maxim Mironjuk
-
August 29, 2025
Wer eine Bibliothek oder ein Tool fuer mehrere PHP- oder Node-Versionen pflegt, kommt an Testmatrizen kaum vorbei. Dieser Artikel zeigt, wie parallel: matrix: in GitLab CI aus einer Job-Definition automatisch mehrere parallele Testlaeufe erzeugt und wie sich Laufzeitkosten und Testabdeckung sinnvoll ausbalancieren lassen.
-