Apache: AH00112: Warning: DocumentRoot [/var/www/example.com/public_html] does not exist
A virtual host points to a directory that doesn't exist.
AH00112: Warning: DocumentRoot [/var/www/example.com/public_html] does not existDocumentRoot does not exist Apache[core:warn] AH00112: Warning: DocumentRootWarning: DocumentRoot does not exist Meaning
Create the directory (mkdir -p) or fix the DocumentRoot path/typos. Apache warns at startup; requests to that vhost then return 404/403. Check symlinks and mounts (unmounted storage).
Common causes
- DocumentRoot typo
- Directory not created or mount missing
- Deployment renamed the folder (symlink
current) - Wrong vhost copied from another server
- Permissions on parent
⚡ Quick fix
sudo mkdir -p /var/www/example.com/public_html- Correct the
DocumentRoot - Verify symlinks/mounts exist at start
Detailed fix by platform
Linux
ls -ld /var/www/example.com/public_html && sudo apachectl -S
How to diagnose
- Path — Exists?
- Mount — Present?
- Vhost — Correct?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
- AH00015: Unable to open logs Apache: AH00091: apache2: could not open error log file /var/log/apache2/error.log. AH00015: Unable to open logs (Permission denied)
- AH00072: make_sock: could not bind to address 0.0.0.0:80 Apache: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80 / AH00015: Unable to open logs
- AH00128: File does not exist Apache: [core:info] AH00128: File does not exist: /var/www/html/favicon.ico (404)
Most viewed in Nginx / Apache
- nginx: [emerg] unknown directive Nginx: nginx: [emerg] unknown directive "x" in /etc/nginx/sites-enabled/x:12 — configuration file test failed
- upstream timed out Nginx: upstream timed out (110: Connection timed out) while reading response header from upstream
- AH00898: Error reading from remote server (502 Proxy Error) Apache: [proxy_http:error] AH01102: error reading status line from remote server 127.0.0.1:3000 / AH00898: Error reading from remote server returned by /api
Other ways to find it
Where this error sits
Origin: Edge & web server. Errors that are often confused with or caused by this one (click to open):
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
💬 What worked for others
No tips yet — did something else fix this for you?
Share what worked for you
Tips are checked by an editor before they appear. Links are removed.
Report a correction or suggest an improvement
Last updated 5 Nov 2026