docs: der NPM-Block zum Einfuegen, und ein Skript, das sagt ob er sitzt

docs/npm-advanced.conf enthaelt genau das, was in NPM unter Advanced ->
Custom Nginx Configuration gehoert: die drei ^~-Bloecke fuer /f/, /t/ und
/api/, samt Begruendung als Kommentar. Die ganze Datei ist einfuegbar --
nginx kennt '#'. Syntax gegengeprueft mit `nginx -t` in einem
Wegwerf-Container, und zwar mit DIESEM Dateiinhalt und nicht mit einer
abgetippten Kurzfassung.

/s/ steht bewusst NICHT drin: die Schluessel bestehen aus einem festen
Alphabet ohne Punkt, eine Freigabe-Adresse endet also nie auf eine
Bildendung und faellt gar nicht erst in die assets.conf-Regel. /assets/
ebenfalls nicht -- die Dateinamen der gebauten Oberflaeche tragen einen Hash
und aendern sich nie unter demselben Namen, dort ist der Zwischenspeicher
richtig.

tools/proxy-pruefen.ps1 misst danach, ob es gewirkt hat, und sagt sonst, was
zu tun ist. Beim Schreiben hat es gleich eine SCHWAECHE IN SICH SELBST
gezeigt: die erste Fassung prueft "/api/ ohne Token -> 401" und meldete
Erfolg -- der 401 war aber nur ein zwischengespeicherter, den der Proxy an
alle ausliefert. Gemessen bekam ihn sogar ein Aufrufer MIT gueltigem Token.

Verlaesslich ist nur das Paar auf einer FRISCHEN, zufaelligen Adresse:

    GET /api/exists/probe-xyz.webp   mit Token    -> 200
    GET /api/exists/probe-xyz.webp   ohne Token   -> 401  gut
                                                  -> 200  Block fehlt

Aktueller Stand, gemessen:

    [ok]  /f/  Cache-Control                     public, max-age=300
    [!!]  /t/  Cache-Control                     max-age=10608
    [ok]  /api/ mit Token -> 200                 HTTP 200
    [!!]  /api/ dieselbe Adresse ohne Token      HTTP 200 -- der Proxy gibt sie weiter
    [ok]  /api/exists?pfad ohne Token -> 401     HTTP 401

Die letzte Zeile ist der Grund, warum die Abfrageform gebaut wurde: sie ist
dicht, ohne von dieser Proxy-Einstellung abzuhaengen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-11 23:34:02 +02:00
co-authored by Claude Opus 5
parent 458775f9d9
commit 914f2fb854
3 changed files with 217 additions and 0 deletions
+12
View File
@@ -481,6 +481,18 @@ darin lag.
**Was noch bei dir liegt** — an NPM komme ich ohne Zugang nicht.
> **Fertig zum Einfügen:** `docs/npm-advanced.conf`. Den ganzen Inhalt in
> NPM → Proxy-Host → *Advanced* → *Custom Nginx Configuration*, dann **Save**
> (erst das schreibt `9.conf` neu — die wahrscheinlichste Erklärung dafür, dass
> es beim ersten Anlauf nicht ankam). Danach:
>
> ```powershell
> pwsh -File tools\proxy-pruefen.ps1 -Token d4rk_...
> ```
>
> Das misst und sagt es, statt es vermuten zu lassen. Die Syntax der Datei ist
> mit `nginx -t` in einem Wegwerf-Container gegengeprüft.
Nachgemessen am 11.08.2026, nicht vermutet:
| Pfad | gemessene `Cache-Control` | heißt |