What is a Broken Link?
A broken link, also known as dead link, is a link that no longer works. Broken links can happen for many reasons, but the most common reason is when a page is either deleted or moved to a different location which causes the server to show a 404 not found error.
How to Properly Fix Broken Links in WordPress
The best way to fix a broken link is to redirect it to another page. For example, if you moved the contents of a page to a different address, then you will need to redirect it to the newer page’s URL. You can do this by setting up 301 redirects.
Similarly, if an external article or website you are pointing to does not exist anymore, then you would want to point users to a similar page that is closely related to the contents of the old article or remove the link altogether.
Check Links Regularly
Remember that redirecting and fixing broken links is an ongoing process. For the average website, once per month is an appropriate cycle. We include Link Monitoring and Repair are part of our WordPress Care Plans.
There are several ranges of HTTP status error codes, defining different aspects of the transaction process between the client and the server.
3xx – Redirection
4xx – Client error
5xx – Server error
HTTP Error Codes
300: Multiple Choices
The URI refers to more than one file. The server may respond with an error message or a list of options.
301: Moved Permanently
The page has been permanently moved. The client will normally perform a redirection to the new URL. References to the old URL should be updated.
302: Moved Temporarily
The page has been temporarily moved. The client will normally perform a redirection to the new URL.
303: See Other
The server has received the request, and the response can be found using a GET request at another URI.
304: Not Modified
The file has not been modified since it was last requested. This response may be sent after a request containing an If-Modified-Since header.
305: Use Proxy
The client should repeat the request using the proxy. Many HTTP clients do not correctly handle responses with this status code, primarily for security reasons.
307: Temporary Redirect
The request should be repeated with another URI, but future requests should still use the original URI.
308: Permanent Redirect
The request, and all future requests should be repeated using another URI.
400: Bad Request
The request contains a syntax error and is denied.
The request header did not contain the authentication codes required for this resource, and access is denied.
402: Payment Required
Reserved for future use. Intended to indicate that some form of payment is required before access is granted to this resource.
The client does not have the necessary permission to access the resource. Occasionally this response is issued when the server does not want any more visitors.
404: Not Found
The resource could not be found on the server. May be caused by misspelling a URI, or requesting a resource that has been deleted.
405: Method Not Allowed
The method used when requesting a resource, is not supported by that resource; for example, using GET on a form which requires POST access.
406: Not Acceptable
The requested resource exists but is not acceptable to the client according to the Accept headers sent in the request.
407: Proxy Authentication Required
The client must be authenticated with the proxy before making this request.
408: Request Timeout
The server timed out waiting for the client to complete the request.
The request could not be processed because of a conflict, such as an edit conflict, or too many concurrent requests.
The requested file is no longer available at this URI. The client should not request the resource again in the future.
411: Length Required
The request did not include the required Content-Length header.
412: Precondition Failed
The request contained a precondition specification which the server does not meet.
413: Request Entity Too Large
The request contains more information than the server is willing or able to process.
414: Request-URI Too Long
The URI provided was too long for the server to process.
415: Unsupported Media Type
The request has a file type which the server does not support.
416: Requested Range Not Satisfiable
The client requested a portion of the file, but the server cannot supply that portion. For example, the client may have asked for data that lies beyond the end of the file.
417: Expectation Failed
An Expect request-header field cannot be satisfied by the server.
420: Enhance Your Calm
Unofficial code returned by Twitter API when the client is being rate limited.
422: Unprocessable Entity
The request was well-formed but was contained semantic errors which made it unprocessable.
The requested resource is locked.
424: Failed Dependency
The request failed due to the failure of a previous request.
429: Too Many Requests
The user has made requests too rapidly. Used with rate limiting schemes.
431: Request Header Fields Too Large
Either an individual header field, or all the header fields collectively, are too large.
450: Blocked by Windows Parental Controls
A Microsoft extension indicating that Parental Controls are blocking access to the resource.
500: Internal Server Error
A non-specified error occured when generating the response.
501: Not Implemented
The server cannot fulfill the request.
502: Bad Gateway
The gateway or proxy server received an error response from the upstream server.
503: Service Unavailable
The resource is currently unavailable.
504: Gateway Timeout
The gateway or proxy server timed out waiting for a response from the upstream server.
505: HTTP Version Not Supported
The server does not support the HTTP protocol version used in the request.
506: Variant Also Negotiates
This results from a configuration error on the server.
507: Insufficient Storage
The server cannot store the information needed to complete the request.
509: Bandwidth Limit Exceeded
Unofficial error code, indicating bandwidth allocation has been or will soon be exceeded.
510: Not Extended
The request contains a mandatory extension policy which is not accepted by the server.
This non-standard code is returned by some sites (e.g. linkedin) which do not permit scanning.
The server did not respond to the URL request within the allotted time.
Redirection Loop / Too Many Redirections
The URL results in a redirection (e.g. 301 or 302) either back to itself, or to a chain of redirections which either eventually reaches the original URL or appears to be endless. Note that redirections sometimes depend on whether cookies are enabled.