Error map
AH00124: Request exceeded the limit of 10 internal redirects Apache: AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary
Nginx / Apache · layer 3, Edge & web server
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.
Directly related (7)
WordPress: 404 Not Found on every page except the homepage (permalinks / .htaccess / Nginx rules)
Pretty permalinks aren’t being routed to index.php — .htaccess is missing/ignored (Apache) or Nginx lacks try_files.
Apache: AH00558: apache2: Could not reliably determine the server's fully qualified domain name
A harmless startup warning: Apache has no global ServerName, so it guessed one from the host’s IP.
Apache: AH00091: apache2: could not open error log file /var/log/apache2/error.log. AH00015: Unable to open logs (Permission denied)
Apache can't open its log files — permissions, a missing directory or disk problems.
Nginx: [error] rewrite or internal redirection cycle while internally redirecting to "/index.php" (500 Internal Server Error)
Nginx kept internally redirecting (more than 10 times), typically from a `try_files` or `rewrite` that points back to itself.
Apache: AH00526: Syntax error on line 12 of /etc/apache2/sites-enabled/site.conf: Invalid command 'Foo', perhaps misspelled or defined by a module not included in the server configuration
Apache's config has a syntax problem or a directive from a module that isn't loaded.
Apache: [core:alert] /var/www/html/.htaccess: Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration
A `.htaccess` file uses a directive the server can't handle, causing 500 errors for the whole directory.
Apache: [core:error] AH00037: Symbolic link not allowed or link target not accessible: /var/www/html/current
Apache refuses to follow a symlink because `FollowSymLinks`/`SymLinksIfOwnerMatch` isn't allowed or the target isn't readable.
Two steps away (20)
HTTP 403 Forbidden
The server understood the request but refuses to authorize it — you (or the server process) are not allowed to access this resour…
HTTP 404 Not Found
The server can’t find anything at the requested URL.
FastCGI sent in stderr: "Primary script unknown"
Nginx passed a script path to PHP-FPM that PHP-FPM couldn’t find — usually a wrong SCRIPT_FILENAME or root.
HTTP 413 Content Too Large (Request Entity Too Large)
The request body is bigger than the server is willing to accept — usually a file upload over the configured limit.
OAuth Error: redirect_uri_mismatch
The redirect URI in your OAuth request doesn’t exactly match one registered for the client in the provider’s console.
WordPress: Error Establishing a Database Connection
WordPress can’t connect to its MySQL/MariaDB database with the credentials in wp-config.php, or the database server is down.
HTTP 500 Internal Server Error
The server hit an unexpected condition — usually an unhandled exception or misconfiguration in the application.
HTTP 499 Client Closed Request (Nginx)
Nginx-specific code logged when the client disconnected before the server finished responding.
[nodemon] app crashed - waiting for file changes before starting...
Your app threw an error on startup; nodemon is waiting for a file change to retry.
Laravel on shared hosting: homepage works but every other route returns 404 Not Found
The web server isn't sending requests to `public/index.php`, so only the root path works — the rewrite rules aren't active.
Nginx: [error] client intended to send too large body: 5242880 bytes (413 Request Entity Too Large)
A request body exceeded `client_max_body_size` (default 1 MB), so Nginx returned 413 before reaching your app.
Nginx: [error] directory index of "/var/www/html/" is forbidden (403 Forbidden)
A directory was requested but no index file exists (or index is wrong) and autoindex is off, so Nginx returns 403.
PHP Parse error: syntax error, unexpected …
PHP can’t parse the file because of a syntax mistake — the real error is often on the line before the one reported.
Apache: AH02240: Server should be SSL-aware but has no certificate configured / SSLCertificateFile: file '/etc/ssl/x.crt' does not exist or is empty
Apache cannot find the certificate or key file named in its configuration, or `SSLEngine on` is set without any certificate.
Apache: [ssl:warn] AH01909: example.com:443:0 server certificate does NOT include an ID which matches the server name
Apache's SSL virtual host name does not match any name inside the certificate it loads.
Apache: [authz_core:error] AH01630: client denied by server configuration: /var/www/html/
Apache 2.4 authorisation denied access to the directory (403) because no `Require all granted` applies.
Apache: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80 / AH00015: Unable to open logs
Another process (Nginx, another Apache, Skype/IIS-like service) already listens on the port Apache wants.
Too many levels of symbolic links (ELOOP)
A symlink points to itself, directly or through a chain, so path resolution loops.
Nginx: [error] open() "/home/user/site/index.html" failed (13: Permission denied), 403 Forbidden
The nginx worker user can't read the requested file or traverse a parent directory.
Apache: [core:info] AH00128: File does not exist: /var/www/html/favicon.ico (404)
The requested file isn't in the DocumentRoot — a normal 404 entry in the Apache error log.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError