Linux – Apache: Client denied by server configuration

apache-2.4Apache2linuxweb-server

I have switched from apache 2.2.22 to apache 2.4.10, and all of the sudden an alias I use to access some logs no longer works.

This is my configuration file:

<VirtualHost *:80>

        ServerAdmin webmaster@localhost
        ServerName mdvns-sequencer

        DocumentRoot /var/www/

        <Directory /var/log/mdvns/>
                Order allow,deny
                Allow from all
                Options +Indexes
        </Directory>

        Alias /logs/ /var/log/mdvns/

        <Directory /var/www>
                AddHandler cgi-script .py
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

When I try and access /logs/ (the alias I've set up), I get a 403 forbidden. The error.log has the following message:

[Sat Jan 01 00:38:25.348732 2000] [authz_core:error] [pid 1256:tid 3053450288] [client 192.168.2.135:64882] AH01630: client denied by server configuration: /var/log/mdvns/

I've gone over everything in the wiki, but just can't find a solution. The directory and files in it have read access for owner/group/other. The directory is definitely there and typed corrected.

I should note I get the same error if I try and access a file in the /logs/ directory.

Any ideas?

Best Answer

Permission options changed in 2.4. More information on 2.4 upgrade documentation

Instead of

<Directory /var/log/mdvns/>
    Order allow,deny
    Allow from all
    Options +Indexes
</Directory>

Try

<Directory /var/log/mdvns/>
    Options +Indexes
    AllowOverride All
    Require all granted
</Directory>

Same for the /var/www directory