
COUNTER Code of Practice
Books and Reference Works
Release 1
Appendix D: Http Return Codes
Introduction
For ease of reference, the numbering used in these Guidelines corresponds exactly to that of the Code of Practice itself; where appropriate the relevant section of the Code of Practice text is quoted.
5a: ‘Only successful and valid requests should be counted. For webserver-logs successful requests are those with a specific return code. The standards for return codes are defined and maintained by NCSA.’
Requirement for Implementation:
Return codes that indicate a successful or valid request are specified in
agreed, international web standards and protocols. The relevant governing document
for hypertext protocols is RFC2068, which contains definitions for each Return
Code number. There are five categories of return code numbers:
1xx (Information): this category provides information on
a request, and often indicates that the user has come upon an experimental
application.
2xx (Success): reserved for successful responses. This category
of code is not usually seen by the user, but their browser will receive them
and will know that whatever request was sent by the browser was received, understood
and accepted.
3xx (Redirection): indicates the need for further action
by the user's browser. User action may not be necessary, as the browser may
deal with it automatically.
4xx (Client Error): this category of code is the one most
frequently seen by the user and indicates an error.
5xx (Server Error): indicates where the server knows it has
made an error, or is not capable of answering the request.
Categories 2xx and 3xx are relevant to
Section 5a of the COUNTER Code of Practice, which deems that only the
following specific return codes indicate a successful or valid request:
200 (OK) The request was successful and information was
returned. This is, by far, the most common return code on the web.
304 (Not modified) In order to save bandwidth a browser
may make a conditional request for resources. The conditional request contains
an ‘If-Modified-Since' field and if the resource has not changed since that
date the server will simply return the 304 code and the browser will use its
cached copy of the resource.
Requests that result in any other return codes within the 2xx and
3xx categories must not be counted. This exclusion covers:
206 (Partial content) This indicates that the server has
only filled part of a specific type of request.
301 (Moved permanently) : The addressed resource has moved,
and all future requests for that resource should be made to the new URL. Transfer
to the new location may be automatic or may require manual intervention by
the user. Either way, a successful request to the new location will generate
a 200 return code.
302 (Moved temporarily) This indicates that the content
has moved while the page requested still has the same URL. The page is, therefore,
not retrieved and must not be counted.
303 (See other) The response to the browser's request can
be found elsewhere. Automatic redirection may take place to the new location.
Full information on the five categories of http return codes and their definitions
may be found at: http://www.w3.org/Protocols/rfc2068/rfc2068 goto:
Chapter 10 (pp 53-64): Status Code Definitions. More summarised information
may be found at: http://www.cknow.com/ckinfo/def_h/httpreturncodes.shtml .
|