Differences between Mozilla Gopher support and Overbite ------------------------------------------------------- * This does not apply to Firefox 4.0 or SeaMonkey 2.1, which no longer support Gopher internally. Gopher is supported internally by Firefox 1.5-3.x and derivatives including SeaMonkey 1.x and 2.0.x without requiring the Overbite add-on, but there are several critical differences in behaviour, most notably the cosmetic changes and that Mozilla's Gopher support is strictly limited to only access port 70. In general, Overbite is more standards-rigid and enforces certain practises in documents which were only laxly demanded by Mozilla's Gopher support. For the vast majority of gopher sites there will be little or no difference except for Overbite's cosmetic improvements. However, the following critical changes in certain deprecated behaviours apply: - Overbite allows access to a range of specifically approved port numbers, not just port 70. In Mozilla, even if a Gopher URL specified a port other than 70, it was always internally rewritten to 70; certain servers have taken advantage of that fact while "appearing" to run on higher port numbers. In Overbite, since many of those port numbers are now permitted, such servers will need to use the correct port number in URLs and menus. Furthermore, any port that is not approved by Overbite will cause an error message instead of being internally redirected to port 70. - HTML pages downloaded from a gopher server require all URLs to have absolute paths, not relative paths, for any tag where a URL or path is specified. This is because the item type portion of the URL is not equipped for relative processing. This was allowed in Mozilla due to content-sniffing, but is incorrect behaviour because the item type for an HTML page is always 'h' and URLs it references might not have the same item type. Overbite rigidly enforces item type hierarchy, and many images and HTML links/anchors in a Gopher-hosted HTML document specified with relative URLs will not display properly. These documents must be rewritten with absolute paths. (Please note that even with Mozilla's lax itemtype support, many relative URLs and anchors still didn't work anyway, so this is good practise in both situations.) - The I itemtype as it is currently used is a violation of Gopher's usually unambiguous item type mapping, since it can specify a range of image file types instead of a certain specific type. In Mozilla, the breadth of supported types was supported by using content-sniffing, which was usually acceptable for the docshell itself. However, this is not recommended for clients that have to do setup in advance or launch external viewers, something that is also possible in Mozilla and Overbite; for this reason, Overbite uses the extension of the file to predict the correct type mapping. Overbite understands .jpg, .jpeg, .gif (though this should be the g itemtype), .svg, .bmp, .ico, .png, .icon, .tif and .tiff. As the I itemtype was historically used to indicate JPEG images, the default if Overbite cannot determine the filetype from the extension is to indicate a JPEG image to the docshell. - Overbite introduces the p and d itemtypes for PNG and PDF files respectively. This is part of a general strategy to clean up the overloaded I itemtype. These types can be used by servers speaking to Mozilla-based Gopher clients, who will simply content-sniff them as usual. The use of these new item types for future compatibility is strongly encouraged. - Sound and movie itemtypes internally are handled as simple binaries by Overbite. - Overbite contains "dotless" support for suppressing the trailing dot in certain Gopher transactions which is necessary for proper support of media types such as SVG. Rarely this can interfere with some text files, particularly pathologically formed ones. If this causes you trouble, set the hidden preference "extensions.overbiteff.dotless" to false through the about:config screen. .