Je sais que cette question a souvent été posée
J'ai suivi la plupart des réponses sur Internet, mais je reçois toujours le même message
403 interdit
Vous n'êtes pas autorisé à accéder à/sur ce serveur.
Il est étrange que lorsque j’accède au localhost:1234
par le même ordinateur, il fonctionne normalement, mais si j’accède à l’aide de mon adresse IP 192.168.0.188:1234
Aussi, ce qui est vraiment bizarre, c’est que j’ai essayé d’installer WAMP sur un autre PC et sans aucune configuration, je n’aurais accès à ce PC.
J'ai donc pensé que c'était parce que McAfee et Firewall, donc j'ai ouvert le port sur Widows et McAfee et que rien n'a changé, j'ai également désactivé le pare-feu et rien ne change toujours.
Ensuite, sans aucune raison, j’ai ouvert le port par le biais de la «redirection de port» du routeur et rien n’a encore changé.
Je ne pense pas que cela soit dû à ma configuration dans WAMP, car je peux toujours obtenir ce message 403 Forbidden
et, en utilisant un autre ordinateur sans configuration, je peux y accéder.
Les deux ordinateurs sont configurés comme ceci:
Windows 8 Pro
Le PC accessible utilise Microsoft Security Essentials.
Le PC inaccessible utilise McAfee Internet Security _.
J'ai essayé de désactiver désactiver WAMP et démarrer IIS pour Microsoft Server (je fonctionne parfaitement à partir de n'importe quel PC), mais WAMP ne fonctionne toujours pas.
J'ai suivi ces tutoriels:
Et le débordement de pile répond ici:
Par défaut, Wampserver est configuré de manière aussi sécurisée que possible. Apache est donc configuré pour autoriser uniquement l'accès depuis la machine exécutant wamp. Après tout, il est supposé être un serveur développement et non un serveur actif.
De plus, une petite erreur a été publiée avec WAMPServer 2.4, qui utilisait l'ancienne syntaxe Apache 2.2 au lieu de la nouvelle syntaxe Apache 2.4 pour les droits d'accès.
Vous devez modifier le paramètre de sécurité sur Apache pour autoriser l'accès depuis n'importe où, alors éditez votre fichier httpd.conf
.
Changer cette section de:
# onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost
À :
# onlineoffline tag - don't remove
Require local
Require ip 192.168.0
Le Require local
permet d'accéder à partir de ces ip 127.0.0.1 & localhost & ::1
.
L'instruction Require ip 192.168.0
vous permettra d'accéder au serveur Apache à partir de n'importe quelle adresse IP de votre réseau interne. En outre, il autorisera l'accès à l'aide de l'adresse IP réelle du serveur mechines à partir de la machine du serveur, comme vous essayez de le faire.
Dans les versions 3 et> de WAMPServer, il existe un hôte virtuel défini pour localhost
. Vous devez donc effectuer les modifications de privilège d'accès dans le fichier de configuration de définition d'hôte virtuel.
D'abord, ne modifiez pas du tout le fichier httpd.conf
, laissez-le tel que vous l'avez trouvé.
A l’aide des menus, éditez le fichier httpd-vhosts.conf
.
Ça devrait ressembler à ça :
<VirtualHost *:80>
ServerName localhost
DocumentRoot D:/wamp/www
<Directory "D:/wamp/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
L'amender pour
<VirtualHost *:80>
ServerName localhost
DocumentRoot D:/wamp/www
<Directory "D:/wamp/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
J'espère que vous aurez créé un hôte virtuel pour votre projet et que vous n'utiliserez pas le dossier wamp\www
pour votre site. Dans ce cas, laissez la définition localhost seule et apportez la modification uniquement à votre hôte virtuel.
N'oubliez pas de redémarrer Apache après avoir effectué cette modification
Pour Apache 2.4.9
en outre, consultez le fichier httpd-vhosts.conf fichier dans C:\wamp\bin\Apache\apache2.4.9\conf\extra
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot C:/wamp/www
<Directory "C:/wamp/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require local
</Directory>
</VirtualHost>
Changer en:
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot C:/wamp/www
<Directory "C:/wamp/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
</VirtualHost>
le passage de "Require local " à "Require tout accepté " a résolu l'erreur 403 sur mon réseau local.
J'ai eu cette réponse de ici . et ça marche pour moi
Require local
Changer en
Require all granted
Order Deny,Allow
Allow from all
Pour développer la réponse de RiggsFolly ’- ou pour toute personne confrontée au même problème mais utilisant Apache 2.2 ou une version inférieure, ce format devrait bien fonctionner:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 ::1
Allow from localhost
Allow from 192.168
Allow from 10
Satisfy Any
Pour plus de détails sur les modifications de format pour Apache 2.4, la page officielle La mise à niveau de 2.2 - à partir de la version 2.4 est assez claire et concise. Le point clé étant:
Les anciens idiomes de contrôle d'accès doivent être remplacés par le nouveau mécanismes d'authentification, bien que pour la compatibilité avec l'ancien configurations, le nouveau module
mod_access_compat
est fourni.
Autrement dit, les administrateurs système du monde entier ne doivent pas nécessairement paniquer à propos de la modification de la configuration d’Apache 2.2 pour la rendre compatible avec la 2.4.
Pour ceux qui pourraient exécuter WAMP 3.1.4 avec Apache 2.4.35 sous Windows 10 (64 bits)
Si vous rencontrez des problèmes avec les périphériques externes qui se connectent à votre hôte local et recevez une erreur 403 Forbidden, il se peut que vos fichiers httpd.conf et httpd-vhosts.conf soient " Exige une "ligne locale qu'ils ont tous les deux en eux.
[Before] httpd.conf
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local <--- This is the offending line.
</Directory>
</VirtualHost>
[After] httpd.conf
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
</Directory>
</VirtualHost>
De plus, vous devrez mettre à jour votre fichier httpd.conf comme suit:
[Before] httpd.conf
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
# onlineoffline tag - don't remove
Require local #<--- This is the offending line.
</Directory>
[Après] httpd.conf
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
# onlineoffline tag - don't remove
# Require local
</Directory>
Assurez-vous de redémarrer votre serveur WAMP via (barre d'état système en bas à droite de l'écran -> clic gauche sur l'icône WAMP -> "Redémarrer tous les services").
Ensuite, actualisez le navigateur de votre machine sur localhost pour vous assurer que vous disposez toujours de la connectivité appropriée, puis actualisez vos autres périphériques externes auxquels vous tentiez précédemment de vous connecter.
Avertissement: Si vous êtes dans une entreprise, cela n’a pas été testé du point de vue de la sécurité; Assurez-vous de bien connaître les protocoles d'accès de votre environnement de développement local avant de mettre en œuvre des modifications radicales.