HTTP Error 417 Expectation failed


The Web server (running the Web site) thinks that the HTTP data stream sent by the client (e.g. your Web browser or our CheckUpDown robot) contains a 'Expect' request which can not be satisfied. The Expect request is fairly generic i.e. loosely defined in the HTTP protocol. It can specify more than one expectation, each of which may be interpreted differently by different Web servers.

Fixing 417 errors - general

This error seldom occurs in most Web traffic, particularly when the client system is a Web browser. This type of Web traffic seldom uses an 'Expect' request.

If your client system is not a Web browser, the problem can only be resolved by examining what the client is trying to do then discussing with your ISP why the Web server fails the 'Expect' request sent by the client system.

Fixing 417 errors - CheckUpDown

Our service monitors your site for HTTP errors like 417. This error should simply never occur on your CheckUpDown account. If it does, it typically indicates defective programming of our systems or of the Web server which manages the site. We do not use the Expect request at all, because we simply want the entire content of the URL you ask us to monitor - without any preconditions.

Please contact us (email preferred) whenever you encounter 417 errors - there is nothing you can do to sort them out. We then have to liaise with your ISP and the vendor of the Web server software to agree the exact reason for the error.

417 errors in the HTTP cycle

Any client (e.g. your Web browser or our CheckUpDown robot) goes through the following cycle when it communicates with the Web server:

  1. Obtain an IP address from the IP name of the site (the site URL without the leading 'http://'). This lookup (conversion of IP name to IP address) is provided by domain name servers (DNSs).
  2. Open an IP socket connection to that IP address.
  3. Write an HTTP data stream through that socket.
  4. Receive an HTTP data stream back from the Web server in response. This data stream contains status codes whose values are determined by the HTTP protocol. Parse this data stream for status codes and other useful information.

This error occurs in the final step above when the client receives an HTTP status code that it recognises as '417'.

Our company also owns these other Web sites: