WebBlocks Redirect Manager

Anforderungen

Dokumentierte Paketversion: 0.1.18. WebBlocks CMS ^1.32; PHP >=8.1.

WebBlocks Redirect Manager ist ein kleines WebBlocks CMS-Plugin zum Erstellen und Verwalten einfacher 301/302-Weiterleitungen aus dem WebBlocks CMS-Administrationsbereich.

-Kompatibilität

  • Plugin-Handle: webblocks-redirect-manager
  • Plugin-Version: 0.1.18
  • Ziel-Hostprodukt: webblocks-cms
  • Robligatorische CMS-Version: ^1.32
  • PHP: >=8.1

Manueller ZIP-Installationsablauf

  1. Erstellen Sie das Plugin-Artefakt lokal: composer plugin:build
  2. build/releases/webblocks-redirect-manager-0.1.18.zip in den Upload-Flow des WebBlocks CMS-Plugins hochladen.
  3. Nach dem Hochladen sollte das CMS das Plugin zunächst in einem deaktivierten Zustand registrieren.
  4. Rehen Sie sich die Metadaten und Berechtigungen des Plugins an.
  5. Aktivieren Sie das Plugin, wenn Sie bereit sind.
  6. Führen Sie die Plugin-Migration über den CMS-Plugin-Lebenszyklus oder den Migrationsbefehl aus, der für die Host-Installation erforderlich ist.

Einrichtung und Migration

Das Plugin besitzt eine Tabelle:

webblocks_redirect_manager_redirects

Die Migration erstellt Umleitungsdatensätze mit:

  • source_path
  • target_url
  • status_code
  • is_enabled
  • hit_count
  • last_hit_at
  • timestamps

Berechtigungen

  • webblocks-redirect-manager.view
  • webblocks-redirect-manager.manage

Laufzeitumleitungen

  • Aktivierte Weiterleitungen werden für nicht übereinstimmende öffentliche GET- und HEAD-Anfragen ausgewertet, bevor das CMS eine 404 zurückgibt.
  • CMS 1.32.112 erkennt installierte Plugin-Anbieter für definition()-Metadaten, registriert oder startet sie jedoch nicht als Laravel-Dienstanbieter. Redirect Manager registriert daher seine öffentliche Fallback-Route von definition(), anstatt sich auf die Mutation der Middleware-Gruppe des Anbieters boot() zu verlassen.
  • Die Anforderungen POST, PUT, PATCH und DELETE werden umgangen.
  • Admin- und statische Namespaces werden umgangen, einschließlich /webadmin/..., /cms/..., /storage/..., /assets/..., /static/..., /build/..., /vendor/... und /webblocks-ui/....
  • Quellpfade werden mit einem führenden Schrägstrich und ohne abschließenden Schrägstrich normalisiert, sodass /test-1, test-1 und /test-1/ derselben Regel entsprechen.
  • Eingehende Abfragezeichenfolgen werden beim Abgleich ignoriert. /test-1?x=1 entspricht der Quelle /test-1.
  • Eingehende Abfragezeichenfolgen werden nicht an die Ziel-URL angehängt. Eine Regel von /test-1 zu /test-2 leitet /test-1?x=1 zu /test-2 um.
  • Wenn GET und HEAD übereinstimmen, werden sowohl hit_count erhöht als auch last_hit_at aktualisiert.
  • Interne Weiterleitungen auf Selbstziele werden während der Erstellungs-/Bearbeitungsvalidierung durch den Administrator abgelehnt und zur Laufzeit als Schleifenschutz umgangen.
  • Wenn die Plugin-Tabelle fehlt, weil keine Plugin-Migrationen durchgeführt wurden, umgehen öffentliche Anfragen die Middleware ohne SQL-Fehler.

Trefferzählertest

Browser können 301-Weiterleitungen zwischenspeichern. Verwenden Sie beim Testen von Trefferzählern 302-Weiterleitungen, leeren Sie den Browser-Cache, verwenden Sie Inkognito oder testen Sie mit curl.

Einschränkungen

  • Plugin-Migrationen werden nicht automatisch ausgeführt; Führen Sie sie bei der Installation oder Aktualisierung durch den CMS-Plugin-Lebenszyklus aus.
  • Kein NPM-, Vite-, Tailwind-, Node-, Marktplatz-, Zahlungs-, Lizenzierungs-, Remote-Installations- oder automatische Aktualisierungsverhalten ist enthalten.