* httpd: use proper server names
* httpd: add example of a very basic static website along with Pleroma
* httpd: let Pleroma serve robots.txt
* relayd: add example of forwarding to a basic httpd website
* relayd: remove appended response headers (most of them already served
by Pleroma anyway)
* relayd: add comments about hosting Pleroma on subdomains
* relayd: reject request that don't belong to any forward
* relayd: add example of hosting media uploads on subdomain
* relayd: change forward timeout check to something sane that actually
works
OpenBSD's httpd does not support caching in any way and putting a
caching layer between it and Pleroma is pointless when nginx works fine.
I also ran into issues with relayd when accessing it from the Tor browser.
Federation seems to be unaffected by this as is base Firefox and Chrome.
Dedupe now uses a three-level sharding directory structure to improve performance when many files are uploaded and stored on a filesystem instead of an object store. (note: Minio still affected as it still uses a traditional filesystem)
This does not help if you already have hundreds of thousands of files uploaded. The media URLs are permanently part of the activity so the files cannot be relocated. A motivated user could write a tool to move the files and perhaps write an Nginx or equivalent redirect to make the files still accessible, but that is beyond the scope of this change.
The API should return a 202 only if data cannot be returned yet and a followup GET /api/v1/media/:id should be called to retrieve it. This is something Mastodon does when it needs to transcode large media files. It does not apply to Pleroma and causes apps to waste an API call when posting a status which causes apps to appear to hang on higher latency environments, such as on mobile networks.
https://docs.joinmastodon.org/methods/media/#v2
Some tidying and grammer improvements for these installation docs, based on my experience installing Pleroma on Ubuntu 24.04 a few minutes ago.
See merge request pleroma/pleroma!4288