feat(site): llms.txt als Wegweiser + Charset-Fix für llms.md
Anlass war die Frage, ob `llms.md` ein guter Name ist. Zwei Befunde: 1. Der Zweck der Konvention ist ein anderer, als D43 annahm. llmstxt.org über die eigene Datei: „a markdown file that provides brief background information and guidance, along with links to markdown files providing more detailed information“ — ein Index, kein Inhalt. Der 211-Zeilen- Leitfaden ist genau eine jener verlinkten Dateien; `llms.md` ist damit der richtige Name, es fehlte der Wegweiser davor. 2. `llms.md` kam auf der stabilen Instanz falsch kodiert an: Apache kennt `.md` nicht und sendet GAR KEINEN Content-Type, der Browser rät windows-1252. Gemessen: characterSet=windows-1252, aus „notation — guide“ wurde „notation â€" guide“, 31 Zeilen betroffen. GitHub Pages liefert dieselbe Datei korrekt als text/markdown; charset=utf-8 aus. - frontend/public/llms.txt: Index nach der Konvention (Titel, Blockquote, Notation in Kurzform, ## Docs, ## Optional). Rein ASCII — er ist die Datei, die ein fremder Agent ungefragt abruft, und soll auch dort ankommen, wo ein Server die Kodierung verschweigt. Alle 5 Links: 200. - scripts/prod.htaccess: AddType für .md/.txt/.werkbaum, von deploy-prod.sh als .htaccess gespiegelt. Nicht in public/ — dort landete es wirkungslos im Pages-Artefakt. Rückweg bei 500 steht in der Datei. - Beide Deploy-Wege kopieren llms.txt mit. SPEC §13 + D43-Nachtrag 2 (mit Richtigstellung der D43-Annahme); Plan: #not.llms.index [x]. 243 Tests grün, Plan 157 Knoten, 0 Warnungen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
cb966e4e20
commit
48d3174684
@@ -0,0 +1,23 @@
|
||||
# Werkbaum — Apache-Konfiguration der produktiven Instanz (D43-Nachtrag 2).
|
||||
# Wird von scripts/deploy-prod.sh als `.htaccess` in die Site-Wurzel gespiegelt.
|
||||
# GitHub Pages ignoriert `.htaccess` (kein Apache) und braucht es auch nicht —
|
||||
# dort ist die Zuordnung schon richtig; die Datei liegt deshalb NICHT in
|
||||
# frontend/public/, sonst landete sie im Pages-Artefakt.
|
||||
#
|
||||
# Warum es sie gibt: Apache kennt die Endung `.md` nicht und sendet dann GAR
|
||||
# KEINEN Content-Type. Der Browser rät daraufhin windows-1252 und macht aus
|
||||
# jedem `—` ein `â€"` — gemessen am 24.08.2026 auf werkbaum.javagil.de, 31
|
||||
# betroffene Zeilen in llms.md. Dieselbe Datei kommt von GitHub Pages als
|
||||
# `text/markdown; charset=utf-8` korrekt an.
|
||||
#
|
||||
# `.werkbaum` bekommt `text/plain` aus dem in SPEC §12/D24 genannten Grund:
|
||||
# dann zeigt der Browser die Datei an, statt sie herunterzuladen.
|
||||
#
|
||||
# Sollte der Server nach einem Deploy 500 antworten, verbietet seine
|
||||
# `AllowOverride`-Einstellung `AddType` (Klasse FileInfo) — dann gehören die
|
||||
# drei Zeilen in die vhost-Konfiguration und diese Datei entfällt.
|
||||
<IfModule mod_mime.c>
|
||||
AddType text/markdown;charset=utf-8 .md
|
||||
AddType text/plain;charset=utf-8 .txt
|
||||
AddType text/plain;charset=utf-8 .werkbaum
|
||||
</IfModule>
|
||||
Reference in New Issue
Block a user