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.
AH01630: client denied by server configuration: /var/www/html/[authz_core:error] AH01630: client denied by server configurationclient denied by server configuration Apache 2.4You don't have permission to access this resource. Apache 403AH01797: client denied by server configuration Meaning
Apache 2.4 replaced Order/Allow/Deny with Require. Add <Directory /var/www/html> Require all granted </Directory> in the vhost (and AllowOverride All if using .htaccess). Check parent <Directory /> defaults, Require ip rules and .htaccess leftovers using 2.2 syntax.
Common causes
- Missing
Require all granted - Config migrated from Apache 2.2 (Order/Allow)
- DocumentRoot outside the allowed
<Directory> Require ipexcluding your IP- Alias target not authorised
⚡ Quick fix
<Directory /var/www/html> Require all granted </Directory>- Replace
Order allow,deny / Allow from allwithRequire all granted - Reload:
sudo apachectl configtest && sudo systemctl reload apache2
Detailed fix by platform
Linux
sudo apachectl -S && grep -rn "Require\|Order" /etc/apache2/sites-enabled/
How to diagnose
- Directive — Require used?
- Version — 2.4 syntax?
- Path — Directory block covers it?
🔧 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
- .htaccess: Invalid command (500 Internal Server Error) Apache: [core:alert] /var/www/html/.htaccess: Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration
- 403 HTTP 403 Forbidden
- 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)
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
- 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
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