Error map

CORS blocked (Laravel API) Browser: Access to XMLHttpRequest at 'https://api.example.com' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header — Laravel

Laravel · layer 4, Application & API

Open the full error page →

Centre: this error. First ring: errors it is linked with (9). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.

CORS blocked (Laravel API) — Browser: Access to XMLHttpRequest at 'https://api.example.com' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header — Laravel (Laravel)CORS blocke…403 This action is unauthorized — Laravel: Illuminate\Auth\Access\AuthorizationException: This action is unauthorized. (Laravel)403 This action is …Command "x" is not defined — Laravel: Symfony\Component\Console\Exception\CommandNotFoundException: Command "make:livewire" is not defined. Did you mean one of these? (Laravel)Command "x" is not …Attempt to read property "x" on null — Laravel/PHP 8: ErrorException: Attempt to read property "name" on null (Laravel)Attempt to read pro…Laravel: Allowed memory size exhausted (request) — Laravel/PHP: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in vendor/laravel/framework (Laravel)Laravel: Allowed me…CORS blocked in Rails API (rack-cors) — Browser: Access to fetch at 'http://localhost:3000/api/items' from origin 'http://localhost:5173' has been blocked by CORS policy — Rails (Ruby / Rails)CORS blocked in Rai…CORS error calling Next.js API route / route handler — Browser: Access to fetch at 'https://api.example.com/api/data' from origin 'https://app.example.com' has been blocked by CORS policy (Next.js route handler) (Next.js)CORS error calling …429 Too Many Requests (Laravel throttle) — Laravel: Illuminate\Http\Exceptions\ThrottleRequestsException: Too Many Attempts. / 429 Too Many Requests (Laravel)429 Too Many Reques…422 Unprocessable Entity: The given data was invalid — Laravel: {"message":"The given data was invalid.","errors":{"email":["The email field is required."]}} (422) (Laravel)422 Unprocessable E…Sanctum: 401 Unauthenticated — Laravel Sanctum: {"message":"Unauthenticated."} 401 on API / SPA requests (Laravel)Sanctum: 401 Unauth…Target class does not exist — Laravel: Target class [App\Http\Controllers\X] does not exist. (PHP)Target class does n…Class "App\Models\X" not found — Laravel: Error: Class "App\Models\Post" not found (Laravel)Class "App\Models\X…Undefined variable $x (Blade view) — Laravel: ErrorException: Undefined variable $posts (View: /resources/views/posts/index.blade.php) (Laravel)Undefined variable …No application encryption key — Laravel: No application encryption key has been specified. (PHP)No application encr…419 Page Expired — Laravel: 419 Page Expired (CSRF token mismatch) (PHP)419 Page ExpiredLaravel storage — Laravel: The stream or file "storage/logs/laravel.log" could not be opened in append mode: Failed to open stream: Permission denied (PHP)Laravel storageVite manifest not found — Laravel: Vite manifest not found at: public/build/manifest.json (PHP)Vite manifest not f…Laravel: Expected response code 250 but got 550 — Laravel: Expected response code "250" but got code "550", with message "550 5.7.1 Relaying denied" (Email / SMTP)Laravel: Expected r…BadMethodCallException: Call to undefined method — Laravel: BadMethodCallException: Call to undefined method App\Models\Post::whereTitle() / Illuminate\Database\Eloquent\Builder::foo() (Laravel)BadMethodCallExcept…Allowed memory size exhausted — PHP Fatal error: Allowed memory size of X bytes exhausted (PHP)Allowed memory size…SIGSEGV — Segmentation fault (core dumped) (Linux)SIGSEGVOOM killer — Killed / Out of memory: Killed process (Linux OOM killer) (Linux)OOM killerActiveRecord::ConnectionNotEstablished — Rails: ActiveRecord::ConnectionNotEstablished: No connection pool for 'ActiveRecord::Base' found (Ruby / Rails)ActiveRecord::Conne…PG::ConnectionBad: could not connect to server — Rails: PG::ConnectionBad: could not connect to server: Connection refused. Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432? (Ruby / Rails)PG::ConnectionBad: …ActiveRecord::IrreversibleMigration — Rails: ActiveRecord::IrreversibleMigration — This migration uses remove_column without a type; db:rollback can't reverse it (Ruby / Rails)ActiveRecord::Irrev…Hydration error: <div> cannot be a descendant of <p> — Next.js: Warning: validateDOMNesting(...): <div> cannot appear as a descendant of <p> / In HTML, <p> cannot be a descendant of <p>. This will cause a hydration error (Next.js)Hydration error: <d…createContext only works in Client Components — Next.js: You're importing a component that needs createContext. It only works in a Client Component but none of its parents are marked with "use client" (Next.js)createContext only …Route used params.x — params should be awaited — Next.js 15: Error: Route "/blog/[slug]" used `params.slug`. `params` should be awaited before using its properties (Next.js)Route used params.x…421 4.7.0 Try again later (rate limited) — SMTP: 421 4.7.0 Our system has detected an unusual rate of unsolicited mail originating from your IP address. Mail sent from your IP address has been temporarily rate limited (Email / SMTP)421 4.7.0 Try again…SES: Maximum sending rate exceeded — Amazon SES: Throttling — Maximum sending rate exceeded (454 Throttling failure) (Email / SMTP)SES: Maximum sendin…1406 — MySQL ERROR 1406: Data too long for column (MySQL)14061048 — MySQL ERROR 1048 (23000): Column 'x' cannot be null (MySQL)10481264 — MySQL ERROR 1264 (22003): Out of range value for column 'x' at row 1 (MySQL)1264invalid csrf token — ForbiddenError: invalid csrf token (EBADCSRFTOKEN) (Authentication)invalid csrf tokenSession store not set on request — Laravel: RuntimeException: Session store not set on request (Laravel)Session store not s…Token has expired (tymon/jwt-auth) — Laravel JWT: Tymon\JWTAuth\Exceptions\TokenExpiredException: Token has expired / The token could not be parsed from the request (Laravel)Token has expired (…

Directly related (9)

403 This action is unauthorizedLaravel

Laravel: Illuminate\Auth\Access\AuthorizationException: This action is unauthorized.

A policy or gate denied the action for the current user, so Laravel returned HTTP 403.

Command "x" is not definedLaravel

Laravel: Symfony\Component\Console\Exception\CommandNotFoundException: Command "make:livewire" is not defined. Did you mean one of these?

`php artisan` doesn't know the command you typed — typo, missing package or an unregistered service provider.

Attempt to read property "x" on nullLaravel

Laravel/PHP 8: ErrorException: Attempt to read property "name" on null

You accessed a property on a value that is `null`, typically an empty relationship or a query that found nothing.

Laravel: Allowed memory size exhausted (request)Laravel

Laravel/PHP: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in vendor/laravel/framework

A request (or artisan job) used more memory than PHP's `memory_limit` allows.

CORS blocked in Rails API (rack-cors)Ruby / Rails

Browser: Access to fetch at 'http://localhost:3000/api/items' from origin 'http://localhost:5173' has been blocked by CORS policy — Rails

The browser blocks calls from your front end to the Rails API because CORS headers are missing.

CORS error calling Next.js API route / route handlerNext.js

Browser: Access to fetch at 'https://api.example.com/api/data' from origin 'https://app.example.com' has been blocked by CORS policy (Next.js route handler)

A cross-origin request to your Next.js API route is blocked because the response lacks CORS headers.

429 Too Many Requests (Laravel throttle)Laravel

Laravel: Illuminate\Http\Exceptions\ThrottleRequestsException: Too Many Attempts. / 429 Too Many Requests

Laravel's rate limiter blocked the client for exceeding the allowed requests per minute.

422 Unprocessable Entity: The given data was invalidLaravel

Laravel: {"message":"The given data was invalid.","errors":{"email":["The email field is required."]}} (422)

Request validation failed, so Laravel returned HTTP 422 with the field errors.

Sanctum: 401 UnauthenticatedLaravel

Laravel Sanctum: {"message":"Unauthenticated."} 401 on API / SPA requests

A request to a `auth:sanctum` route had no valid token or session, so Laravel returned 401.

Two steps away (26)

Target class does not existPHP

Laravel: Target class [App\Http\Controllers\X] does not exist.

Laravel’s container couldn’t find the controller or class named in a route or binding.

Class "App\Models\X" not foundLaravel

Laravel: Error: Class "App\Models\Post" not found

PHP can't find the class you referenced — a missing import, wrong namespace or file name, or a stale autoloader.

Undefined variable $x (Blade view)Laravel

Laravel: ErrorException: Undefined variable $posts (View: /resources/views/posts/index.blade.php)

A Blade template uses a variable the controller didn't pass to the view.

No application encryption keyPHP

Laravel: No application encryption key has been specified.

Laravel’s APP_KEY is missing, so it can’t encrypt sessions and cookies.

419 Page ExpiredPHP

Laravel: 419 Page Expired (CSRF token mismatch)

Laravel rejected a POST because the CSRF token was missing, expired or didn’t match the session.

Laravel storagePHP

Laravel: The stream or file "storage/logs/laravel.log" could not be opened in append mode: Failed to open stream: Permission denied

The web server can’t write to Laravel’s storage or bootstrap/cache directories.

Vite manifest not foundPHP

Laravel: Vite manifest not found at: public/build/manifest.json

Laravel’s @vite directive can’t find the compiled asset manifest because assets weren’t built.

Laravel: Expected response code 250 but got 550Email / SMTP

Laravel: Expected response code "250" but got code "550", with message "550 5.7.1 Relaying denied"

Laravel connected and authenticated but the SMTP server rejected the message at the RCPT TO / MAIL FROM / DATA step with the code…

BadMethodCallException: Call to undefined methodLaravel

Laravel: BadMethodCallException: Call to undefined method App\Models\Post::whereTitle() / Illuminate\Database\Eloquent\Builder::foo()

You called a method the model, builder or collection doesn't have.

Allowed memory size exhaustedPHP

PHP Fatal error: Allowed memory size of X bytes exhausted

The script tried to use more memory than PHP’s `memory_limit` allows.

SIGSEGVLinux

Segmentation fault (core dumped)

A program accessed memory it wasn’t allowed to, and the kernel killed it with SIGSEGV (exit code 139).

OOM killerLinux

Killed / Out of memory: Killed process (Linux OOM killer)

The kernel ran out of memory and killed a process to recover — the program just prints “Killed” (exit code 137).

ActiveRecord::ConnectionNotEstablishedRuby / Rails

Rails: ActiveRecord::ConnectionNotEstablished: No connection pool for 'ActiveRecord::Base' found

ActiveRecord has no database connection configured or established for this process.

PG::ConnectionBad: could not connect to serverRuby / Rails

Rails: PG::ConnectionBad: could not connect to server: Connection refused. Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432?

Rails can't reach PostgreSQL — the server is down, wrong host/port/socket, or credentials/pg_hba block it.

ActiveRecord::IrreversibleMigrationRuby / Rails

Rails: ActiveRecord::IrreversibleMigration — This migration uses remove_column without a type; db:rollback can't reverse it

`rails db:rollback` can't undo the migration because it contains an operation Rails can't invert.

Hydration error: <div> cannot be a descendant of <p>Next.js

Next.js: Warning: validateDOMNesting(...): <div> cannot appear as a descendant of <p> / In HTML, <p> cannot be a descendant of <p>. This will cause a hydration error

The rendered HTML has an invalid element nesting, so the browser "fixes" it and React's hydration no longer matches.

createContext only works in Client ComponentsNext.js

Next.js: You're importing a component that needs createContext. It only works in a Client Component but none of its parents are marked with "use client"

A context provider (or a lib that uses `createContext`) is used in a Server Component.

Route used params.x — params should be awaitedNext.js

Next.js 15: Error: Route "/blog/[slug]" used `params.slug`. `params` should be awaited before using its properties

In Next.js 15 `params` and `searchParams` are Promises; reading properties synchronously triggers this error/warning.

421 4.7.0 Try again later (rate limited)Email / SMTP

SMTP: 421 4.7.0 Our system has detected an unusual rate of unsolicited mail originating from your IP address. Mail sent from your IP address has been temporarily rate limited

The receiving server (often Gmail or Outlook) is temporarily throttling your mail because the volume or reputation of your sendin…

SES: Maximum sending rate exceededEmail / SMTP

Amazon SES: Throttling — Maximum sending rate exceeded (454 Throttling failure)

You are sending faster than your Amazon SES account's per-second limit, so SES throttles the requests.

1406MySQL

MySQL ERROR 1406: Data too long for column

The value is longer than the column allows (e.g. 300 characters into VARCHAR(255)), and strict mode rejects it instead of truncat…

1048MySQL

MySQL ERROR 1048 (23000): Column 'x' cannot be null

An INSERT/UPDATE put NULL into a NOT NULL column.

1264MySQL

MySQL ERROR 1264 (22003): Out of range value for column 'x' at row 1

A number is too large (or negative for UNSIGNED) for the column type.

invalid csrf tokenAuthentication

ForbiddenError: invalid csrf token (EBADCSRFTOKEN)

The request’s CSRF token is missing or doesn’t match the token tied to the user’s session/cookie.

Session store not set on requestLaravel

Laravel: RuntimeException: Session store not set on request

Code used `session()` or `$request->session()` in a route/middleware group that doesn't run the session middleware.

Token has expired (tymon/jwt-auth)Laravel

Laravel JWT: Tymon\JWTAuth\Exceptions\TokenExpiredException: Token has expired / The token could not be parsed from the request

A JWT sent by the client is expired, invalid or absent, so `jwt-auth` rejects the request.