There are five categories of the HTTP status codes:
1xx (Informational) 2xx (Successful) 3xx (Redirection) 4xx (Client Error) 5xx (Server Error)
When resource can be loaded fine, HTTP returns 200 OK message.
curl -I serverdown.co.uk/ HTTP/1.1 200 OK Server: nginx Date: Sun, 20 Jan 2019 12:56:56 GMT Content-Type: text/html Content-Length: 3734 Connection: keep-alive Last-Modified: Fri, 18 Jan 2019 13:24:34 GMT ETag: “e96-57fbb6e9db8a7” Accept-Ranges: bytes
See what happens when you try to curl the resource which does not exist, HTTP returns error 404:
curl -I 9dabebc.online-server.cloud/this-resource-does-not-exist HTTP/1.1 404 Not Found Server: nginx Date: Sun, 20 Jan 2019 12:56:14 GMT Content-Type: text/html; charset=iso-8859-1 Connection: keep-alive
A redirect (in this case a 301 redirect) looks like this:
curl -I google.com HTTP/1.1 301 Moved Permanently Location: http://www.google.com/ Content-Type: text/html; charset=UTF-8 Date: Sat, 18 Apr 2020 17:04:56 GMT Expires: Mon, 18 May 2020 17:04:56 GMT Cache-Control: public, max-age=2592000 Server: gws Content-Length: 219 X-XSS-Protection: 0 X-Frame-Options: SAMEORIGIN
Errors starting with 5xx are most likely to be the Web server configuration issues, not the issues with the server hardware. They look similar to this:
500 Internal Server Error Connection: close Date: Thu, 18 Aug 2019 15:23:46 GMT Server: Apache Content-Length: 592 Content-Type: text/html; charset=iso-8859-1
A 500 error doesn't tell you much on the client side (we know that there was some error on the server, but only the server really knows what happened.) PHP errors are the most common. To find out more about a 500 error we'd be best off looking at the server / web server logs if we have access to them.