Skip to content

Runbook: Úprava nginx location bloků

Kdy použít

Když je potřeba přidat, odebrat nebo upravit location block v nginx configu služby na hub-alfa nebo prod-alfa.

Prerekvizity

  • SSH přístup na cílový server (Tailscale)
  • Znalost, která služba je dotčená a na jakém portu běží

Postup

1. Přečti aktuální config

ssh root@<server> "cat /etc/nginx/sites-enabled/<domain>"

2. Ověř stav před změnou

# Otestuj aktuální chování dotčené URL
curl -s -o /dev/null -w '%{http_code}' https://<domain>/<path>/

3. Proveď změnu

# Příklad: odebrání location bloku
ssh root@<server> "sed -i '/<pattern_start>/,/}/d' /etc/nginx/sites-enabled/<domain>"

# Příklad: přidání location bloku — použij heredoc
ssh root@<server> "sed -i '/<insert_before>/i\\
    location /path/ {\\
        proxy_pass http://127.0.0.1:<port>;\\
    }' /etc/nginx/sites-enabled/<domain>"

4. Ověř syntax

ssh root@<server> "nginx -t"
Pokud syntax FAIL → oprav chybu, NEreloaduj.

5. Zkontroluj výsledný config

ssh root@<server> "cat /etc/nginx/sites-enabled/<domain>"

6. Reload nginx

ssh root@<server> "nginx -s reload"

7. Ověř funkčnost

# Health check služby
ssh root@<server> "curl -s -o /dev/null -w '%{http_code}' http://127.0.0.1:<port>/health"

# Test dotčené URL
curl -s -o /dev/null -w '%{http_code}' https://<domain>/<path>/

8. Dokumentace

  • Zapsat do CHANGES.md
  • Zapsat do memory:inbox (type: config-change)

Rollback

# Pokud máš zálohu:
ssh root@<server> "cp /etc/nginx/sites-enabled/<domain>.bak /etc/nginx/sites-enabled/<domain> && nginx -s reload"

# Pokud nemáš — ručně vrátit block zpět a nginx -s reload

Historie použití

Datum Server Doména Změna Task
2026-03-20 prod-alfa pulselab.cz Odebrán location /outputs/ block T-20260320-063
2026-04-28 prod-alfa auth.studio60.cz location = /.well-known/openid-configuration → generic location /.well-known/ (MCP OAuth discovery fix) T-20260428-284
2026-04-28 hub-alfa pulse.s60hub.cz Přidán location /mcp SSE-friendly (proxy_buffering off, 3600s timeouts) T-20260428-299
2026-04-28 prod-alfa pulselab.cz Přidán location /mcp SSE-friendly (proxy_buffering off, 3600s timeouts) T-20260428-299