Of course, it’s all very well to define HTTP as the protocol for a browser to communicate with a Web server. However, there is more to a Web server than its function a communications protocol. Ultimately, a Web server serves up content.
When discussing how a Web server works, it is not enough to simply outline a diagram of how low-level network packets go in and out of a Web server.
This content must be identified in a way such that a Web browser can download and display that content in correctly. The primary mechanism for deciding how to display content is the MIME type header.
Multipurpose Internet Mail Extension (MIME)types tell a Web browser what sort of document is being sent. Such type identification is not limited to simple graphics or HTML.
In fact, more than 370 MIME types are distributed with the Apache Web server by default in the mime.types configuration file. And even this list does not represent the entire universe of possible MIME types! MIME types are distinguished using a type/subtype syntax associated with a file extension. Here is a brief snippet from an Apache mime.typesfile.
|video/mpeg||mpeg mpg mpe|
From this, we can see that files containing MPEG video content end with file extensions such as mpeg, mpg, or mpe. So a file with the name “southpark.mpeg” would be served up as being an MPEG video file.