--- title: HTTP Status Codes description: "200, 301, 404, 500, and 503 are the server's first language. Learn each family and how to read them in hosting logs." canonical: https://penasihathosting.com/en/hosting-wiki/http-status-codes type: wiki locale: en updated: 2026-10-29 author: Willya Randika --- # HTTP Status Codes ## Overview - **Summary:** 200, 301, 404, 500, and 503 are the server's first language. Learn each family and how to read them in hosting logs. - **Author:** Willya Randika ([profile](/penulis/willya-randika)) ## Article **An HTTP status code** is a three-digit number the server returns with every response — `200`, `301`, or `404` — telling the browser and crawler what happened to the request. In hosting, it is the first clue that separates an application problem from a server configuration issue or a resource limit. ## The five code families | Family | Meaning | Example | | --- | --- | --- | | 1xx | Informational, request still in progress | 101 Switching Protocols | | 2xx | Success | 200 OK, 201 Created | | 3xx | Redirection | 301, 302, 304 | | 4xx | Client-side problem | 400, 401, 403, 404, 429 | | 5xx | Server-side problem | 500, 502, 503, 504, 508 | The codes you will meet most in hosting: | Code | Practical meaning | | --- | --- | | **200** | Page loaded successfully | | **301** | Permanent move; browsers and crawlers cache it | | **302** | Temporary move; do not use it for permanent changes | | **304** | Content unchanged, browser uses its cache | | **403** | Server refuses access (permissions, IP block, WAF) | | **404** | URL not found | | **429** | Too many requests; rate limited | | **500** | Unhandled application or `.htaccess` error | | **502/504** | Gateway/proxy did not get a timely answer | | **503** | Service temporarily unavailable (maintenance or resource exhaustion) | | **508** | Account resource limit reached, often Entry Processes | ## Reading a code correctly Open **DevTools → Network**, reload the page, and check the Status column. For a quick terminal check, `curl -I https://example.com` returns the headers and status without downloading the whole page. If the code is 5xx, inspect the hosting error log and the application log; the status alone does not show the failing line. 4xx codes usually come from the URL, authentication, or a security rule. 5xx codes more often come from a PHP fatal error, a database connection, or server configuration. On shared hosting, 508 and 503 can appear when an account hits CPU, RAM, or process limits — not because traffic is huge. ## What to watch for - **304 is not an error.** The browser is using a cached copy; the page is healthy. - **301 is cached hard.** A bad redirect can be difficult to undo in visitors' browsers. - **5xx can come from a CDN.** Check whether the problem is at the origin or the proxy layer. - **One code does not prove the cause.** Read logs and timing before changing configuration. ## FAQ 500 means the application failed to process the request because of an unhandled error. 503 means the service is intentionally or temporarily unavailable, for example maintenance or resource exhaustion. The URL may have changed, an `.htaccess` rewrite rule may be wrong, or the index file may be missing from the document root. Check the permalink and server configuration before creating a new page. Yes. A 301 moves signals to the target URL. Make sure the target is relevant, not a 404, and avoid long redirect chains.