HTTP 300 status code
HTTP 300 status code indicates multiple choices. The requested resource may include multiple locations, and accordingly a list of resource characteristics and addresses may be returned for selection by the user terminal (for example, a browser).
300 Multiple Choices
The requested resource has a series of alternative responses, each with its own specific address and browser driver negotiation information. The user or browser can choose a preferred address for redirection.
Unless this is a HEAD request, the response should include an entity with a list of resource attributes and addresses from which the user or browser can choose the most appropriate redirect address. The format of this entity is determined by the format defined by Content-Type. The browser may automatically make the most appropriate choice based on the format of the response and the browser's own capabilities. Of course, the RFC 2616 specification does not specify how such automatic selection should be performed.
If the server itself already has a preferred feedback choice, the URI of this feedback should be specified in Location; the browser may use this Location value as the address for automatic redirection. Additionally, this response is cacheable unless otherwise specified.