Chapter 4. Supporting MIME types

Table of Contents
4.1. The Content-Type: header
4.2. MIME types on a SLES system
4.3. Loading and using the MIME module

MIME types: We will start with a very brief discussion about what MIME types are and in particular what MIME content types are. We will also see how they are associated with file suffixes in a particular system configuration file.

Modules: We will then introduce the concept of the module and, in particular, the module that allows the web server to interpret MIME types.

4.1. The Content-Type: header

Let's take another look at the headers that get sent back by a fully configured web server.

HTTP/1.x 200 OK
Date: Wed, 21 Feb 2007 17:53:35 GMT
Server: Apache/2.2.3 (Linux/SUSE)
Last-Modified: Wed, 21 Feb 2007 17:53:33 GMT
Etag: "1c0e43-132-3caa4140"
Accept-Ranges: bytes
Content-Length: 306
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html

In particular note the Content-Type: header. This identifies the document served as being of MIME content type text/html. This informs the browser that the document should be parsed as HTML rather than as plain text. This identification of content type is an important feature of HTTP that was lacking in many earlier transfer protocols.

Now let's look at the headers coming from our server as it currently stands.


HTTP/1.x 200 OK
Date: Wed, 21 Feb 2007 17:49:42 GMT
Server: Apache/2.2.3 (Linux/SUSE)
Last-Modified: Wed, 21 Feb 2007 17:34:30 GMT
Etag: "1c0e41-132-f8897580"
Accept-Ranges: bytes
Content-Length: 306
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/plain

The principal difference is that the Content-Type: header now reads text/plain.