87a8393537
Change encrypted URL format to /v1/e/{token}/img.{ext}
...
Add trailing filename to encrypted URLs for better browser compatibility.
The filename is ignored by the server but helps browsers identify content type.
2026-01-08 16:14:01 -08:00
1f809a6fc9
Implement ETag, HEAD requests, and conditional requests
...
- Add ETag generation based on output content hash (first 16 chars)
- Add ContentLength to ImageResponse from cache
- Add LoadWithSize method to ContentStorage
- Add GetOutputWithSize method to Cache
- Handle HEAD requests returning headers only
- Handle If-None-Match conditional requests returning 304
- Register HEAD route for image proxy endpoint
2026-01-08 10:08:38 -08:00
2e349a8b83
Implement security headers middleware
...
Adds X-Content-Type-Options, X-Frame-Options, Referrer-Policy,
and X-XSS-Protection headers to all responses.
2026-01-08 10:02:17 -08:00
1f0ec59eb5
Wire up auth routes and encrypted URL endpoint
...
Add session manager and encurl generator to handlers.
Register /, /logout, /generate, /v1/e/{token}, /static/* routes.
2026-01-08 07:38:44 -08:00
0eb6193431
Use HTTPWriteTimeout constant for request timeout
2026-01-08 02:22:25 -08:00
516853626d
Add basic webserver skeleton with healthcheck
2026-01-08 02:20:23 -08:00