Error map
AH00112: DocumentRoot does not exist Apache: AH00112: Warning: DocumentRoot [/var/www/example.com/public_html] does not exist
Nginx / Apache · layer 3, Edge & web server
Centre: this error. First ring: errors it is linked with (12). 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 (12)
[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.
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.
Nginx: nginx: [error] invalid PID number "" in "/run/nginx.pid" (when running nginx -s reload)
Nginx can't signal the master process because the PID file is empty, stale or missing.
Browser: Welcome to nginx! If you see this page, the nginx web server is successfully installed and working
Requests are served by the default server block, not your site's block.
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.
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.
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.
systemd: apache2.service: Main process exited, code=exited, status=1/FAILURE — Job for apache2.service failed because the control process exited with error code
systemd couldn't start Apache — the real error is in the journal or `apachectl configtest`.
Nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)
Nginx isn't allowed to bind that port — a privileged port as non-root, or SELinux restricts it.
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: [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: [autoindex:error] AH01276: Cannot serve directory /var/www/html/: No matching DirectoryIndex (index.html,index.php) found, and server-generated directory index forbidden by Options directive
A directory was requested, no index file exists, and directory listing (`Options Indexes`) isn't enabled.
Two steps away (33)
Error: Cannot find module 'x' (MODULE_NOT_FOUND)
Node can’t resolve the module path — the package isn’t installed, or a relative path/extension is wrong.
Error: listen EADDRINUSE: address already in use :::3000
Another process is already listening on that port.
HTTP Error 500.30 - ASP.NET Core app failed to start
IIS/Azure’s ASP.NET Core Module launched your app but it crashed during startup.
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.
Job for nginx.service failed because the control process exited with error code
systemd tried to start the service, but its start command failed. The real reason is in the service’s status/journal.
Nginx: nginx: [emerg] unexpected end of file, expecting ";" or "}" in /etc/nginx/conf.d/site.conf:42
The config ends while a block or directive is still open — a missing `}` or `;`.
Nginx: nginx: [emerg] duplicate location "/" in /etc/nginx/sites-enabled/default:52
Two `location` blocks with the same match exist in one server block (often from two included files).
Nginx: nginx: [warn] conflicting server name "example.com" on 0.0.0.0:80, ignored
Two server blocks listen on the same port with the same `server_name`; the second is ignored.
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.
Error: listen EACCES: permission denied 0.0.0.0:80
Node isn’t allowed to bind that port — ports below 1024 need root on Linux/macOS, and some Windows ports are reserved.
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Nginx (or another server) can’t listen on the port because another process already holds it — often Apache, another Nginx, or a s…
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.
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.
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.
HTTP 404 Not Found
The server can’t find anything at the requested URL.
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.
Nginx: [info] client prematurely closed connection while reading response header from upstream / access log status 499
The client (browser, mobile app, load balancer) disconnected before Nginx finished the response; Nginx logs status 499.
Failed to start x.service: Unit x.service not found
systemd has no unit with that name — the package isn’t installed, the name differs on this distro, or a new unit file wasn’t load…
System has not been booted with systemd as init system (PID 1). Can't operate.
You ran systemctl inside an environment without systemd as PID 1 — a Docker container or older WSL.
systemd: Start request repeated too quickly / service hit its start limit
The service crashed and restarted several times in a short period, so systemd stopped trying (StartLimitBurst).
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…
user is not in the sudoers file. This incident will be reported.
Your account isn’t allowed to use sudo.
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…
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: [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.
Nginx: nginx: [emerg] directive "proxy_pass" is not terminated by ";" in /etc/nginx/sites-enabled/app:15
A directive's arguments run into the next line because the `;` is missing (or a quote is unbalanced).
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.
Nginx/Apache: ModSecurity: Access denied with code 403 (phase 2). Matched "Operator GE matched 5 at TX:anomaly_score"
The ModSecurity WAF (OWASP Core Rule Set) blocked the request as suspicious.
Apache: [core:warn] AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/ports.conf:5
Apache 2.4 ignores the old `NameVirtualHost` directive — a harmless warning from a config written for 2.2.
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.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError