Your webserver returns a different file depending on the value of the Accept:
header:
$ curl https://thelastlugnut.com/forum/assets/files/2024-02-01/1706755649-85270-lincoln.jpg | md5sum -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7055 100 7055 0 0 55551 0 --:--:-- --:--:-- --:--:-- 55551
d0710d15e32cc2415ca6aa2679d6ae99 -
$ curl -H "Accept: image/webp" https://thelastlugnut.com/forum/assets/files/2024-02-01/1706755649-85270-lincoln.jpg | md5sum -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3194 100 3194 0 0 5839 0 --:--:-- --:--:-- --:--:-- 5828
11fa4986c0e290f8cff5ed5d8254a728 -
Checking the file type confirms one is JPEG while the other is webp:
$ curl https://thelastlugnut.com/forum/assets/files/2024-02-01/1706755649-85270-lincoln.jpg | file -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7055 100 7055 0 0 83000 0 --:--:-- --:--:-- --:--:-- 83000
/dev/stdin: JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=6, orientation=upper-left, xresolution=86, yresolution=94, resolutionunit=2], baseline, precision 8, 600x273, components 3
$ curl -H "Accept: image/webp" https://thelastlugnut.com/forum/assets/files/2024-02-01/1706755649-85270-lincoln.jpg | file -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3194 100 3194 0 0 28017 0 --:--:-- --:--:-- --:--:-- 28017
/dev/stdin: RIFF (little-endian) data, Web/P image
My Firefox lists image/webp
as a preferred Accept value when requesting images, and I assume many browsers do. That's why when viewing the image and downloading it's webp, but downloading directly through the link might not include that same Accept header.
I assume you have some sort of module on your webserver that automatically converts images based on the Accept header sent by the client. That's not a feature of FoF Upload, and probably not a Flarum extension at all.
EDIT: additional note: notice the download speed is slower for the webp image each time. Indicating it's likely converted on the fly. It could also just be a consequence of the file being smaller and the initial wait time for the request having a larger importance, but I think it's significant enough to explain an on the fly conversion.