J'essaie de configurer le projet kohana 3 en tant qu'hôte virtuel.
Config:
<VirtualHost *:80>
DocumentRoot "D:/Devel/matysart/matysart_dev1"
ServerName matysart-one.local
ServerAlias www.matysart-one.local
DirectoryIndex index.php
</VirtualHost>
Erreur (403):
[client 127.0.0.1] client refusé par la configuration du serveur: D:/Devel/matysart/matysart_dev1 /
Quelqu'un pourrait aider?
Dans mon cas, j'ai modifié la balise de répertoire.
à partir de
<Directory "D:/Devel/matysart/matysart_dev1">
Allow from all
Order Deny,Allow
</Directory>
To
<Directory "D:/Devel/matysart/matysart_dev1">
Require local
</Directory>
Et cela a sérieusement fonctionné. Cela semble avoir changé avec Apache 2.4.2.
Pour moi, le travail suivant est copié à partir d’exemple dans /etc/Apache2/Apache2.conf
:
<Directory /srv/www/default>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Require all granted
option est la solution pour le premier exemple de problème dans wiki.Apache.org page dédiée à ce numéro pour Apache version 2.4+.
Plus de détails sur l'option Require sont disponibles sur page officielle d'Apache pour le module mod_authz et sur cette page aussi . À savoir:
Exiger tout accordé -> L'accès est autorisé sans condition.
L'erreur "client refusé par la configuration du serveur" signifie généralement que quelque part dans votre configuration sont Allow from
et Deny from
directives empêchant l'accès. Lisez la documentation mod_authz_Host pour plus de détails.
Vous devriez pouvoir résoudre cela dans votre VirtualHost en ajoutant quelque chose comme:
<Location />
Allow from all
Order Deny,Allow
</Location>
Ou alternativement avec une directive Directory
:
<Directory "D:/Devel/matysart/matysart_dev1">
Allow from all
Order Deny,Allow
</Directory>
Certaines enquêtes sur vos fichiers de configuration Apache vont probablement lever les restrictions par défaut sur DocumentRoot par défaut.
dans mon cas,
j'utilise macOS Mojave (Apache/2.4.34). Un problème est survenu dans les paramètres de l'hôte virtuel dans le fichier /etc/Apache2/extra/httpd-vhosts.conf. après avoir ajouté la balise de répertoire requise, mon problème avait disparu.
Exiger tout accordé
J'espère que la structure de configuration complète de l'hôte virtuel vous sauvera.
<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>
tout ce que vous avez à faire est de remplacer le MainProjectFolderName par votre exact ProjectFolderName.
cela a fonctionné pour moi ..
<Location />
Allow from all
Order Deny,Allow
</Location>
J'ai inclus ce code dans mon /etc/Apache2/Apache2.conf
Cela m'est arrivé plusieurs fois lors de la migration d'Apache 2.2.
Ce que j’ai trouvé, c’est qu’il existe un ordre, Refuser, que j’ai manqué avec la fonction de recherche de VIM, qui est en quelque sorte la ligne principale par défaut de Vhost, la ligne 379. J'espère que cela aidera quelqu'un. J'ai commenté l'Ordre Refuser, Autoriser et Refuser de Tous et cela a fonctionné!
J'ai des serveurs avec des listes appropriées d'hôtes et d'adresses IP. Rien de cela allow all
des trucs. Mon correctif était de mettre le nom d'hôte de mon nouveau poste de travail dans la liste. Le conseil est donc:
Assurez-vous que l'ordinateur que vous utilisez figure ACTUELLEMENT dans la liste des adresses IP autorisées. Examinez les adresses IP à partir des messages de log, résolvez les noms, vérifiez ifconfig
/ipconfig
etc.
* Google m'a envoyé en raison du message d'erreur.