sylius-robots-txt — eine robots.txt, die pro Kanal antwortet.
Jeder Sylius-Kanal bekommt seine eigene robots.txt, und jeder AI-Crawler darin eine namentlich benannte Gruppe statt einer Wildcard. Das Content Signal geht zusätzlich als Response-Header raus, weil Dokument und Header verschiedene Dinge beschreiben. Und eine statische Datei unter public/ beschattet die Route — lautlos.
Eine Wildcard-Gruppe ist keine Aussage über GPTBot
Ein Crawler wertet die Gruppe aus, die seinen eigenen Token nennt, und ignoriert die Wildcard-Gruppe, sobald es eine spezifischere gibt. Wer AI-Crawler über User-agent: * regeln will, hat damit also nichts über sie gesagt — er hat nur eine Regel formuliert, die genau die Crawler befolgen, die ohnehin keinen eigenen Token führen. Deshalb bekommt jeder Produkt-Token seine eigene Gruppe, ausgeschrieben und namentlich, statt als Sammelposten.
Das Content Signal steht im Dokument und geht zusätzlich als Response-Header raus, weil beide unterschiedliche Reichweiten haben. Die robots.txt beschreibt eine Crawl-Politik für einen ganzen Host — sie ist eine Absichtserklärung, die ein Client abholt, bevor er irgendetwas anderes abruft. Der Header beschreibt die konkret abgerufene Ressource, in dem Moment, in dem sie ausgeliefert wird. Ein Client, der die robots.txt nie gelesen hat, sieht trotzdem das Signal zu dem Dokument, das er gerade in der Hand hält.
Bleibt die Falle, die dieses Paket am häufigsten unwirksam macht: eine statische public/robots.txt. Der Webserver liefert sie aus, bevor der Request Symfony überhaupt erreicht — die Route wird nie aufgerufen, kein Log-Eintrag entsteht, kein Fehler wird geworfen. Die Konfiguration im Kanal ist dann vollständig korrekt und vollständig wirkungslos. Die Datei gehört beim Einbau gelöscht, nicht bearbeitet.
Quellcode & Doku
Composer-Paket
MIT · Sylius 2.0+ · PHP 8.2+
composer require koh/sylius-robots-txt
Gebaut, getestet und unter MIT veröffentlicht. Die öffentliche Distribution über Packagist wird vorbereitet (coming soon).
Teil der Familie
MIT
Dieses Paket gehört zu koh/sylius-agent-ready — siebzehn Bundles, die einen Sylius-Shop für KI-Agenten benutzbar machen. Jedes ist einzeln einsetzbar.