Real 413 root cause on .116 and .228 turned out not to be the body-size limit — their /etc/nginx/sites-enabled/archipelago was a stale regular FILE, not a symlink to sites-available, so every nginx update since someone froze the active config had been invisible to running nginx. The /api/blob location, added at some point after that freeze, didn't exist in sites-enabled, so every attachment upload hit nginx's default 1m client_max_body_size and returned 413 regardless of attachment size. Deploy now re-creates the symlink on every run: if sites-enabled is a regular file or missing, we replace it with a symlink to sites-available. Idempotent if it's already correct. Also applied the fix live on all 4 fleet nodes — /api/blob now responds 401 (session-auth required, as designed) instead of 413 on 2MB+ test uploads. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
94 KiB
Executable File
94 KiB
Executable File