Main Page   Data Structures   File List   Data Fields   Globals   Related Pages  

XHTML Negotiation Module


mod_xhtml_neg -- a module to negotiate an appropriate content-type for XHTML content. Clients that request application/xhtml+xml will be returned it, other clients will receive text/html for backward compatibility. Other content types, such as application/xml can be returned to suitable clients.

Some special cases for Internet Explorer compatibility were inevitably introduced. See XhtmlNegStarsIgnore directive.

Specs followed include RFC 2616, RFC 3023, RFC 3236. Also deals with issues contained in RFC 2854.

From Etags should be unique for each content-type returned. This is done by adding our own suffix to Etag headers when a negotiation is successful. The suffix is a hash of the content-type value returned to the client.

Nicholas Cull <>
1 March 2004
Version History:
0.5 Basic handling of Accept header
0.6 Added charset handling
0.7 Added profile handling, fixed up default charset for text/xml
0.8 First public release.
0.9 ETag handled correctly for different content types.
0.92 Pick up the AddDefaultCharset directive from the Apache core
0.93 Use a better hash function for ETag uniqueness
0.94 Parse q-values correctly irrespective of system locale
1.0 pre 1 Prepare for stable release
1.0 First stable release
XhtmlNegActive Is this module enabled? Defaults to no.
XhtmlNegLog A file name for an output log file
XhtmlNegTypes A file extension followed by one or more matching content-type strings
XhtmlNegStarsIgnore The number of stars in an Accept token which should be ignored if we match them
XhtmlNegCache Should negotiated HTTP 1.0 requests be cacheable? Defaults to no

Generated on Fri Jun 11 22:28:22 2004 for XHTML Negotiation Module by doxygen1.2.15