Error map

404 on all routes except home (public folder / .htaccess) Laravel on shared hosting: homepage works but every other route returns 404 Not Found

Laravel · layer 4, Application & API

Open the full error page →

Centre: this error. First ring: errors it is linked with (7). 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.

404 on all routes except home (public folder / .htaccess) — Laravel on shared hosting: homepage works but every other route returns 404 Not Found (Laravel)404 on all …Route [login] not defined — Laravel: Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login] not defined (Laravel)Route [login] not d…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…503 Service Unavailable (maintenance mode stuck) — Laravel: Be right back. / 503 Service Unavailable after php artisan down (Laravel)503 Service Unavail…Unable to prepare route for serialization. Uses Closure — Laravel: LogicException: Unable to prepare route [dashboard] for serialization. Uses Closure. (Laravel)Unable to prepare r…Storage files 404: public/storage symlink missing — Laravel: 404 for /storage/file.jpg — symlink(): No such file or directory / The [public/storage] link already exists (Laravel)Storage files 404: …The bootstrap/cache directory must be present and writable — Laravel: RuntimeException: The /var/www/bootstrap/cache directory must be present and writable. (Laravel)The bootstrap/cache…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 …publickey — Git: Permission denied (publickey). fatal: Could not read from remote repository. (Git)publickeyAADSTS700016 — Azure AD (Entra ID): AADSTS700016 Application not found in the directory (Azure)AADSTS700016401 — HTTP 401 Unauthorized (HTTP)401Allowed 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 killerMaintenance mode — WordPress: Briefly unavailable for scheduled maintenance. Check back in a minute. (WordPress)Maintenance modeYour PHP version does not satisfy requirement — Composer/Laravel: Your Composer dependencies require a PHP version ">= 8.2.0". You are running 8.1.12 (Laravel)Your PHP version do…env() returns null (config cached) — Laravel: .env changes ignored / env('X') returns null after php artisan config:cache (Laravel)env() returns null …Target class does not exist — Laravel: Target class [App\Http\Controllers\X] does not exist. (PHP)Target class does n…Network is unreachable — connect: Network is unreachable (ENETUNREACH) (Linux)Network is unreacha…rest_no_route — WordPress REST API: {"code":"rest_no_route","message":"No route was found matching the URL and request method."} (WordPress)rest_no_route1114 — MySQL ERROR 1114 (HY000): The table 'x' is full (MySQL)1114126 incorrect key file — MySQL ERROR 126 (HY000): Incorrect key file for table; try to repair it (MySQL)126 incorrect key f…Laravel 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 storagesudoers — user is not in the sudoers file. This incident will be reported. (Linux)sudoersNot allowed — WordPress: Sorry, you are not allowed to access this page. (WordPress)Not allowedsession save path — Warning: session_start(): open(/var/lib/php/sessions/sess_x, O_RDWR) failed: Permission denied (PHP)session save pathNo 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 ExpiredVite manifest not found — Laravel: Vite manifest not found at: public/build/manifest.json (PHP)Vite manifest not f…

Directly related (7)

Route [login] not definedLaravel

Laravel: Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login] not defined

Code called route('name') for a route name that doesn’t exist — very often route('login') from the auth middleware in API-only ap…

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.

503 Service Unavailable (maintenance mode stuck)Laravel

Laravel: Be right back. / 503 Service Unavailable after php artisan down

The application is in maintenance mode — after `php artisan down` (or a failed deploy) it was never brought back up.

Unable to prepare route for serialization. Uses ClosureLaravel

Laravel: LogicException: Unable to prepare route [dashboard] for serialization. Uses Closure.

`php artisan route:cache` failed because a route uses a closure, which can't be cached.

Storage files 404: public/storage symlink missingLaravel

Laravel: 404 for /storage/file.jpg — symlink(): No such file or directory / The [public/storage] link already exists

Uploaded files stored in `storage/app/public` aren't reachable because the `public/storage` symlink doesn't exist or points to th…

The bootstrap/cache directory must be present and writableLaravel

Laravel: RuntimeException: The /var/www/bootstrap/cache directory must be present and writable.

Laravel can't write its compiled cache files because the folder is missing or has the wrong permissions/owner.

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.

Two steps away (21)

publickeyGit

Git: Permission denied (publickey). fatal: Could not read from remote repository.

SSH authentication to GitHub/GitLab/Bitbucket failed — no key, wrong key, or the key isn’t added to your account.

AADSTS700016Azure

Azure AD (Entra ID): AADSTS700016 Application not found in the directory

The client ID in your sign-in request doesn’t exist in the tenant you’re authenticating against.

401HTTP

HTTP 401 Unauthorized

The request has no valid authentication credentials — you need to log in or send a valid token.

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).

Maintenance modeWordPress

WordPress: Briefly unavailable for scheduled maintenance. Check back in a minute.

An update was interrupted and WordPress left its `.maintenance` file behind, so the site stays in maintenance mode.

Your PHP version does not satisfy requirementLaravel

Composer/Laravel: Your Composer dependencies require a PHP version ">= 8.2.0". You are running 8.1.12

The installed dependencies need a newer PHP than the one running the app (CLI or web server).

env() returns null (config cached)Laravel

Laravel: .env changes ignored / env('X') returns null after php artisan config:cache

After `config:cache`, Laravel no longer reads `.env`, so `env()` calls outside config files return null and edits to `.env` have…

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.

Network is unreachableLinux

connect: Network is unreachable (ENETUNREACH)

The host has no route to the destination network — no default gateway, interface down, or trying IPv6 without IPv6 connectivity.

rest_no_routeWordPress

WordPress REST API: {"code":"rest_no_route","message":"No route was found matching the URL and request method."}

The REST endpoint doesn’t exist for that URL and HTTP method — wrong namespace/route, plugin not active, or route registered too…

1114MySQL

MySQL ERROR 1114 (HY000): The table 'x' is full

MySQL couldn’t extend the table — disk full, a size limit, or a MEMORY table hitting max_heap_table_size.

126 incorrect key fileMySQL

MySQL ERROR 126 (HY000): Incorrect key file for table; try to repair it

MySQL can’t use a table’s index file — usually a full tmp disk during a query, or MyISAM corruption.

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.

sudoersLinux

user is not in the sudoers file. This incident will be reported.

Your account isn’t allowed to use sudo.

Not allowedWordPress

WordPress: Sorry, you are not allowed to access this page.

Your user role lacks the capability for that admin screen — or the database table prefix / user capabilities are out of sync afte…

session save pathPHP

Warning: session_start(): open(/var/lib/php/sessions/sess_x, O_RDWR) failed: Permission denied

PHP can’t write session files to the configured session.save_path.

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.

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.