I try to setup kohana 3 project as virtual host.
Config:
<VirtualHost *:80>
DocumentRoot "D:/Devel/matysart/matysart_dev1"
ServerName matysart-one.local
ServerAlias www.matysart-one.local
DirectoryIndex index.php
</VirtualHost>
Error (403):
[client 127.0.0.1] client denied by server configuration:
D:/Devel/matysart/matysart_dev1/
Could somebody help?
In my case, I modified directory tag.
From
<Directory "D:/Devel/matysart/matysart_dev1">
Allow from all
Order Deny,Allow
</Directory>
To
<Directory "D:/Devel/matysart/matysart_dev1">
Require local
</Directory>
And it seriously worked. It's seems changed with Apache 2.4.2.
For me the following worked which is copied from example in /etc/apache2/apache2.conf
:
<Directory /srv/www/default>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Require all granted
option is the solution for the first problem example in wiki.apache.org page dedicated for this issue for Apache version 2.4+.
More details about Require option can be found on official apache page for mod_authz module and on this page too. Namely:
Require all granted -> Access is allowed unconditionally.
The error "client denied by server configuration" generally means that somewhere in your configuration are Allow from
and Deny from
directives that are preventing access. Read the mod_authz_host documentation for more details.
You should be able to solve this in your VirtualHost by adding something like:
<Location />
Allow from all
Order Deny,Allow
</Location>
Or alternatively with a Directory
directive:
<Directory "D:/Devel/matysart/matysart_dev1">
Allow from all
Order Deny,Allow
</Directory>
Some investigation of your Apache configuration files will probably turn up default restrictions on the default DocumentRoot.
in my case,
i'm using macOS Mojave (Apache/2.4.34). There was an issue in virtual host settings at /etc/apache2/extra/httpd-vhosts.conf file. after adding the required directory tag my problem was gone.
Require all granted
Hope the full virtual host setup structure will save you.
<VirtualHost *:80>
DocumentRoot "/Users/vagabond/Sites/MainProjectFolderName/public/"
ServerName project.loc
<Directory /Users/vagabond/Sites/MainProjectFolderName/public/>
Require all granted
</Directory>
ErrorLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-error_log"
CustomLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-access_log" common
</VirtualHost>
all you've to do replace the MainProjectFolderName with your exact ProjectFolderName.
This has happened to me several times migrating from Apache 2.2.
What I have found is that there is an Order,Deny that I missed with VIM's Search feature somehow that is the default main Vhost, line 379. Hope this helps someone. I commented out the Order Deny,Allow and Deny from All and it worked!
this worked for me..
<Location />
Allow from all
Order Deny,Allow
</Location>
I have included this code in my /etc/apache2/apache2.conf