META tags with an HTTP-EQUIV attribute
are equivalent to HTTP headers. Typically, they control the action of browsers,
and may be used to refine the information provided by the actual headers. Tags
using this form should have an equivalent effect when specified as an HTTP
header, and in some servers may be translated to actual HTTP headers
automatically or by a pre-processing tool.
Note: While HTTP-EQUIV META tag appears to work properly with Netscape
Navigator, other browsers may ignore them, and they are ignored by Web proxies,
which are becoming more widespread. Use of the equivalent HTTP header, as
supported by e.g. Apache server, is more
reliable and is recommended wherever possible.
HTTPheaders are
defined in RFC1945 (HTTP/1.0)
and RFC2068
(HTTP/1.1). Note that RFC2068 states that multiple headers with the same name
may be present only if the values may be concatenated.
HTTP headers may be generated by CGI scripts, and in Apache and CERN httpd by using a side
file containing metadata. Other servers may have other mechanisms to generate
headers. Note that certain server-generated headers may not be overridden (such
as Date), and that others are only meaningful with a non-200 status code. Using
an HTTP header is preferable to using META tags, since the header will be
understood by cache agents and proxies in addition to browsers, and metadata
(such as PICS data) may be associated with image files, sound files, etc.
However, new HTTP headers should not be created without checking for conflict
with existing ones since it is possible to interfere with server and proxy
operation.
The date and time after which the document should be considered expired.
Controls cacheing in HTTP/1.0. In Netscape Navigator, a request for a document
whose expires time has passed will generate a new network request (possibly with
If-Modified-Since). An illegal Expires date, e.g. "0", is interpreted as "now".
Setting Expires to 0 may thus be used to force a modification check at each
visit.
Web robots may delete expired documents from a search engine, or schedule a
revisit.
Dates must be given in RFC850 format, in GMT.
E.g. (META tag):
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
or (HTTP header):
Expires: Wed, 26 Feb 1997 08:21:57 GMT
In HTTP 1.0, an invalid value (such as "0") may be used to mean
"immediately".
Note: While the Expires HTML META tag appears to work properly with
Netscape Navigator, other browsers may ignore it, and it is ignored by Web
proxies. Use of the equivalent HTTP header, as supported by e.g. Apache, is more
reliable.
See also CacheNow for
discussion about cache control, page expiry, etc.
Controls cacheing in HTTP/1.0. Value must be
"no-cache". Issued by browsers during a Reload request, and in a document
prevents Netscape Navigator cacheing a page locally.
The HTTP content type may be extended to give the character set. As an
HTTP/1.0 header, this unfortunately breaks older browsers. As a META tag, it
causes Netscape Navigator to load the appropriate charset before displaying the
page. E.g.
It is now recommended to always use this tag, even with the
previously-default charset ISO-8859-1. Failure to do so may cause display
problems where, for instance, the document uses UTF-8 punctuation characters but
is displayed in ISO or ASCII charsets.
May be used to declare the natural language of the document. May be used by
robots to categorize by language. The corresponding Accept-Language
header (sent by a browser) causes a server to select an appropriate natural
language document. E.g.
In Netscape Navigator, has the same effect as clicking "Reload"; i.e.
issues an HTTP GET with Pragma: no-cache (and
If-Modified-Since header if a cached copy
exists).
Note: If a script is executed which reloads the current document, the action
of the Refresh tag may be undefined. (e.g. <body onLoad= "document.location='otherdoc.doc'>)
Platform-Independant Content rating Scheme. Typically used to declare a
document's rating in terms of adult content (sex, violence, etc.) although the
scheme is very flexible and may be used for other purposes.
META tags with a name attribute
are used for other types which do not correspond to HTTP headers. Sometimes the
distinction is blurred; some agents may interpret tags such as "keywords"
declared as either "name" or as "http-equiv".
NOINDEX prevents anything on the page from being indexed.
NOFOLLOW prevents the crawler from following the links on the page and
indexing the linked pages.
NOIMAGEINDEX prevents the images on the page from being indexed but the
text on the page can still be indexed.
NOIMAGECLICK prevents the use of links directly to the images, instead
there will only be a link to the page.
Google supports a NOARCHIVE
extension to this scheme to request the Google search engine from caching pages; see
the Google FAQ See
also the /robots.txtexclusion
method.
A short, plain language description of the document. Used by search engines
to describe your document. Particularly important if your document has very
little text, is a frameset, or has extensive scripts at the top. E.g.
<META NAME="description" CONTENT="Citrus fruit wholesaler.">
Keywords used by search engines to index your document in addition to words
from the title and document body. Typically used for synonyms and alternates of
title words. E.g.
Microsoft Word 97 supports a number
of HTML META attributes in the HTML export option. Content-Type is used
to set the charset, Generator is set and various other tags may
optionally be set.
The German search engine Fireball. See the metadata page and meta-tag generator.
Supports Author, Publisher, Keywords, Description plus page-topic, page-type.