17 May 2007

Apache 2.2 client denied by server configuration

Setting up and starting apache 2.2 went smoothly. The first hiccup occured when a virtual host was added. The site cannot be browsed. The log file says:
client denied by server configuration
Kind of like the problem that I ran into with the 2.0.54 installation
(13)Permission denied: access to /index.php denied


I thought it would be a user/group problem. Apache 2 had a wierd group set by default (#-1). With 2.2 it's not so wierd but a more orthodox 'daemon'. Why it wasn't set to nobody as it used to be with 1.3 is a mystery. Changing it to nobody didn't solve the problem.
Digging deeper, I found the problem in is actually in the root directory configuration section.

In 2.0 it's
Options FollowSymLinks AllowOverride None
In 2.20 it's
Options FollowSymLinks AllowOverride None Order deny,allow Deny from all
The added bit of extra security in 2.20 causes the docroot for the vhost been inaccessible. Just commenting out the access configuration stuff does the trick. A better solution is to add the following with the in the vhost block.
Order deny,allow Deny from all

AddThis Social Bookmark Button Bookmark this article with any Bookmarker (Digg, del.icio.us, Technorati, reddit, Yahoo MyWeb, Newsvine, Furl)