Anyway Ive been having a few problems with mime types and lighttpd, this has all come after I migrated my Raspberry Pi - Personal Podcast solution from Debian squeeze to Raspbian distributions and the 'differences' between the versions.
Mime types are assigned to file extensions (e.g. .html = text/html) and are loaded through the lighttpd's config file (sort of), specifically:
includes a script
which uses a file of mime types and file extensions
to make the associations!
All the mime types and associated file extensions are stored in this file as a table and if you need to create, modify or remove them its as simple as modifying this file.
The mime types are stored as text, with mime types to file extension(s):
The issue I experienced was that Debian Squeeze and Raspbian distributions install different versions of the mime.types file.
I was specifically interested in the application/rss+xml mime type as without it browsers wouldn't recognise an rss (podcast) feed, in Debian Squeeze the mime mapping was as expected:
However in Raspbian it was:
Wikipedia's page on mime types told me that the x meant "Types or subtypes that begin with x- are non-standard (they are not registered with IANA)". Now the application/rss+xml isn't registered with IANA so it is technically correct that it should be x-rss+xml but not very helpful because all the browsers I tested only identify rss+xml and why this change was made between versions is a mystery.