Magento Blog: Anleitungen und Praxiswissen | Seite 166 | mironsoft
Magento Blog
-
04.10.2025
Jeder Magento-Deploy arbeitet mit sensiblen Daten: SSH-Keys, Datenbank-Passwörtern, Composer-Auth-Tokens, Redis-Verbindungen und API-Keys. Die Frage, wo diese Secrets gespeichert werden, entscheidet darüber, wie angreifbar ein Deployment-Prozess im Störfall ist. GitLab CI/CD-Variablen sind ein praktischer Ausgangspunkt — aber nicht für alle Secrets die beste Wahl.
-
04.10.2025
GraphQL-Authorization endet nicht bei der Query-Prüfung. Sensible Felder wie E-Mail-Adressen, Bestellhistorien und Admin-spezifische Daten müssen auf Feldebene abgesichert werden – im Resolver-Kontext, nicht nur im Schema. Dieser Artikel zeigt, wie das in der Praxis funktioniert.
-
03.10.2025
Fortgeschrittene Abfragen in IndexedDB gehen weit über getAll() hinaus: Cursor-Iteration mit IDBKeyRange, Compound Keys über mehrere Felder und Multi-Entry-Indexe für Array-Werte erlauben präzise, speicherschonende Queries direkt auf der Speicher-Engine des Browsers. Wer diese Werkzeuge beherrscht, muss keine Daten mehr client-seitig filtern, sondern lässt IndexedDB die Vorselektion übernehmen.
-
03.10.2025
Wer schon einmal eine Umgebungsvariable in einer SSH-Sitzung gesetzt hat, die im Cron-Job plötzlich fehlte, kennt das Problem: Bash lädt je nach Kontext völlig unterschiedliche Startdateien. Die Ladereihenfolge von profile, bash_profile und bashrc entscheidet, welche Konfiguration überhaupt wirksam wird, und genau dieses Verständnis fehlt vielen Administratoren.
-
02.10.2025
Eine Komponente in script setup ist standardmäßig eine geschlossene Blackbox: Weder ihre reaktiven Variablen noch ihre Funktionen sind vom Elternteil aus per Template-Ref erreichbar, selbst wenn der Ref korrekt gesetzt ist. Das ist bewusstes Design und schützt vor unkontrolliertem Zugriff auf interne Implementierungsdetails, lässt sich aber gezielt mit defineExpose aufheben, wenn ein Elternteil tatsächlich eine bestimmte Methode einer Kindkomponente direkt aufrufen muss, etwa um ein Formular zu validieren oder ein Modal zu öffnen. Wer versteht, wo dieser Zugriff sinnvoll ist und wo er sich besser durch Props und Events ersetzen ließe, vermeidet sowohl unnötig rigide als auch unnötig verworrene Komponentenschnittstellen.
-
02.10.2025
Ein offener Datenbank-Port bedeutet noch lange nicht, dass MySQL bereit ist, Verbindungen zu verarbeiten. depends_on mit condition service_healthy verknuepft die Startreihenfolge von Docker Compose Services direkt mit dem Healthcheck-Status, statt sich auf ein reines Erreichbarkeits-Signal zu verlassen, und beseitigt damit eine der haeufigsten Fehlerquellen in Multi-Service-Stacks.
-
02.10.2025
Cumulative Layout Shift zählt zu den drei Core Web Vitals und misst, wie stark sichtbare Elemente einer Seite unerwartet ihre Position verändern, während der Nutzer bereits mit der Seite interagiert oder sie liest. Ein hoher CLS-Wert führt zu Fehlklicks, verlorener Leseposition und einem grundsätzlichen Eindruck von Instabilität, selbst wenn alle anderen Performance-Metriken gut aussehen. Die vier häufigsten Ursachen, Bilder ohne Dimensionsangabe, spät ladende Werbebanner, Web-Font-Swap und dynamisch eingefügter Content über bestehendem Content, lassen sich mit der Layout-Instability-API und den Browser-DevTools systematisch aufspüren, statt sie zufällig beim Testen zu entdecken.
-
02.10.2025
Ein modularer Monolith teilt eine Symfony Anwendung in klar abgegrenzte Module auf, jedes als eigenes Bundle mit eigener Datenschicht und definierter Schnittstelle. So bleibt ein wachsendes Projekt wartbar, ohne sofort die operative Komplexitaet von Microservices zu uebernehmen. Dieser Artikel zeigt die konkrete Verzeichnisstruktur, die Kommunikation zwischen Modulen und wie Deptrac Architekturgrenzen automatisch durchsetzt.
-
02.10.2025
Die Bundle Extension ist der Mechanismus, ueber den ein Symfony Bundle seine Services im Host-Container registriert. Compiler Passes gehen einen Schritt weiter und greifen nach dem Laden aller Bundles direkt in den ContainerBuilder ein, um getaggte Services zu sammeln oder Definitionen zu veraendern. Dieser Artikel erklaert beide Mechanismen im Zusammenspiel.
-
02.10.2025
Gutes Focus-Management trennt Webentwicklung von zugänglicher Webentwicklung. :focus-visible zeigt den Fokusring nur bei Tastaturnutzung, :focus-within ermöglicht Container-Reaktionen — zusammen mit korrekten outline-Styles nach WCAG bilden sie das Fundament für Keyboard-Navigation ohne Kompromisse beim visuellen Design.