428

Precondition Required

Official
A precondition is required to process the request

Specification of the HTTP status code 428

The 428 Precondition Required status code indicates that the origin server requires the request to be conditional.

Its typical use is to avoid the "lost update" problem, where a client GETs a resource's state, modifies it, and PUTs it back to the server, when meanwhile a third party has modified the state on the server, leading to a conflict. By requiring requests to be conditional, the server can assure that clients are working with the correct copies.

Responses using this status code SHOULD explain how to resubmit the request successfully.

Responses with the 428 Precondition Required status code MUST NOT be stored by a cache.

Source / Quote by: The 428 Precondition Required HTTP Status Code is specified by section 3 of RFC6585.

How to throw a 428 statuscode with PHP?

To throw the HTTP status code 428 on a web page, the PHP function http_response_code can be used. The syntax is as follows: http_response_code(428) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test the 428 HTTP status code

In order to be able to display the HTTP status code (in this case 428 Precondition Required) and other information on the client side, the development console must be opened with F12. Afterwards you have to navigate to the tab "Network". Now you can open the page, in the network tab you should see the web page (example index.php). This must be selected and then the Herder section must be selected. Here the user will see the following result:

Status code 428 Precondition Required
Overview
URL: https://http-statuscode.com/errorCodeExample.php?code=428
Status: 428 Precondition Required
Those: Network
IP address: XX.XX.XX.XX
Status code 428 Precondition Required

How to create a custom error page for the 428 status code

Creating your own 428 Precondition Required error page is relatively easy with the web server "Apache" as well as with the web server "NGINX".

Apache Webserver

The web server "Apache" is one of the most popular web servers on the Internet. To create an own 428 Precondition Required error page in "Apache", the following change must be made in the following file.

File: .htaccess
ErrorDocument 428 /errors/428.html

NGINX Webserver

Similar to the web server "Apache", "NGINX" is also widely used on the Internet. To create your own 428 Precondition Required error page in "NGINX", the following change must be made in the following file.

File: sites-enabled/default
error_page 428 /428.html;
location = /428.html {
    root /usr/share/nginx/html;
    internal;
}

Browser compatibility of the 428 status code

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Constants in programming languages

http.StatusPreconditionRequired
Response::HTTP_PRECONDITION_REQUIRED
:precondition_required
Author: Tony Brüser
Author: Tony Brüser

Tony Brüser is an enthusiastic web developer with a penchant for HTTP status codes.

LinkedInGitHub