web-dev-qa-db-fra.com

Apache me donne 403 accès interdit lorsque DocumentRoot pointe vers deux lecteurs différents

Je reçois un accès 403 interdit lorsque j'essaie d'ouvrir une page sous un vhost où la racine du document se trouve sur un lecteur différent de celui où Apache est assis. J'ai installé en utilisant la version apachefriends. Voici mon fichier httpd-vhosts.conf:


NameVirtualHost 127.0.0.1


<VirtualHost 127.0.0.1> ServerName foo.localhost DocumentRoot "C:/xampp/htdocs/foo/public" </VirtualHost>


<VirtualHost 127.0.0.1> ServerName bar.localhost DocumentRoot "F:/bar/public" </VirtualHost>

En ouvrant bar.localhost dans mon navigateur, Apache me donne 403 Access Forbidden. J'ai essayé de définir de nombreux droits d'accès différents, même des droits complets pour tout le monde, mais rien de ce que j'ai essayé n'a aidé.

Edit: Merci! Pour référence future, ajoutez "Index des options" dans pour afficher les index de répertoire.

50
RobbieGee

Tu n'avais pas besoin

Options Indexes FollowSymLinks MultiViews Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted

la seule chose dont vous avez besoin est ...

Require all granted

... dans la section répertoire.

Voir le côté de mise à niveau d'Apache 2.4:

http://httpd.Apache.org/docs/2.4/upgrading.html

58
Michael Klink

Quelque part, vous devez dire à Apache que les gens sont autorisés à voir le contenu de ce répertoire.

<Directory "F:/bar/public">
    Order Allow,Deny
    Allow from All
    # Any other directory-specific stuff
</Directory>

Plus d'informations

50
Mark Embling

Pour Apache 2.4.2 : J'obtenais 403: Interdit en continu lorsque j'essayais d'accéder à WAMP sur mon Windows 7 bureau de mon iPhone sur WiFi. Sur un blog , j'ai trouvé la solution - ajouter Exiger que tout soit accordé après Autoriser tout dans la section <Directory>. Voici donc à quoi ressemble ma section <Directory> à l'intérieur de <VirtualHost>

<Directory "C:/wamp/www">
    Options Indexes FollowSymLinks MultiViews Includes ExecCGI
    AllowOverride All
    Order Allow,Deny
    Allow from all
    Require all granted
</Directory>
24
cloudwhale

Je l'ai corrigé en supprimant le code ci-dessous de

C:\wamp\bin\Apache\apache2.4.9\conf\extra\httpd-vhosts.conf fichier

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-Host.example.com"
    ServerName dummy-Host.example.com
    ServerAlias www.dummy-Host.example.com
    ErrorLog "logs/dummy-Host.example.com-error.log"
    CustomLog "logs/dummy-Host.example.com-access.log" common
 </VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-Host2.example.com"
    ServerName dummy-Host2.example.com
    ErrorLog "logs/dummy-Host2.example.com-error.log"
    CustomLog "logs/dummy-Host2.example.com-access.log" common
</VirtualHost>

Et ajouté

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot "c:/wamp/www"
    ServerName localhost
    ErrorLog "logs/localhost-error.log"
    CustomLog "logs/localhost-access.log" common
</VirtualHost>

Et cela a fonctionné comme un charme

0
mujaffars