Comment permettre aux utilisateurs du réseau local d'accéder à mes sites WAMP?

119

Tout d'abord, j'ai lu au moins 20 articles sur ce sujet, et aucun d'entre eux ne peut correspondre au scénario et j'ai foiré le processus à plusieurs reprises. Je me tourne donc vers l'aide en proposant mon scénario spécifique si une aide sera appréciée.

Les ordinateurs portables ou autres appareils sont connectés via un routeur sans fil.

J'ai essayé:

  • Activez le port 80 sur le pare-feu. rien ne s'est passé.
  • Exécuter ping, ipconfiget il adresse IPv4 essayé, refuser l' accès ou me mettre à verizon (mon fournisseur d' accès Internet), la page de configuration routeur.
  • J'ai essayé la configuration d'Apache, c'était un gâchis, je n'ai jamais obtenu toute la configuration d'autorisation dans de nombreux messages et j'ai essayé l'un des plus prometteurs, qui a planté mon WAMP, j'ai dû traverser tous les problèmes et réinstaller.

Ce que j'ai vraiment essayé d'accomplir, c'est tout simplement de permettre à tous les utilisateurs de se connecter à ce routeur sans fil d'accéder à mes sites WAMP hébergés par Win8.

Je me demande s'il y a des étapes spécifiques que je peux franchir pour que cela fonctionne vraiment.

WAMP 2.4 sur Win8.1. Un ordinateur portable héberge des sites locaux.

Ezeewei
la source

Réponses:

250

Voir la fin de cet article pour savoir comment faire cela dans WAMPServer 3

Pour WampServer 2.5 et versions précédentes

WAMPServer est conçu pour être un outil de développement monoplace. Apache est donc configuré par défaut pour n'autoriser l'accès qu'à partir du PC exécutant le serveur ie localhost ou 127.0.0.1 ou :: 1

Mais comme il s'agit d'une version complète d'Apache, tout ce dont vous avez besoin est un peu de connaissance du serveur que vous utilisez.

Le moyen simple (marteau pour casser une noix) est d'utiliser l'option de menu wampmanager «Mettre en ligne».

left click wampmanager icon -> Put Online

Cela indique cependant à Apache qu'il peut accepter des connexions à partir de n'importe quelle adresse IP de l'univers . Ce n'est pas un problème tant que vous n'avez pas transféré le port 80 sur votre routeur, ou que vous n'essaierez jamais de le faire à l'avenir.

La manière la plus judicieuse est d'éditer le fichier httpd.conf (à nouveau en utilisant le menu de wampmanager) et de changer manuellement la sécurité d'accès Apache.

left click wampmanager icon -> Apache -> httpd.conf

Cela lance le fichier httpd.conf dans le bloc-notes.

Recherchez cette section de ce fichier

<Directory "d:/wamp/www">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    #
#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost
</Directory>

En supposant maintenant que votre sous-réseau local utilise la plage d'adresses 192.168.0.?

Ajoutez cette ligne après Allow from localhost

Allow from 192.168.0

Cela indiquera à Apache qu'il est autorisé à y accéder depuis n'importe quelle adresse IP de ce sous-réseau. Bien sûr, vous devrez vérifier que votre routeur est configuré pour utiliser la gamme 192.168.0.

Cela se fait simplement en entrant cette commande à partir d'une fenêtre de commande ipconfiget en regardant la ligne étiquetée, IPv4 Address.puis utilisez les 3 premières sections de l'adresse que vous voyez là-dedans.

Par exemple, si le vôtre ressemblait à ceci: -

IPv4 Address. . . . . . . . . . . : 192.168.2.11

Vous utiliseriez

Allow from 192.168.2

MISE À JOUR pour les utilisateurs d'Apache 2.4

Bien sûr, si vous utilisez Apache 2.4, la syntaxe pour cela a changé.

Vous devez remplacer TOUTES ces sections:

Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost

Avec cela, en utilisant la nouvelle syntaxe Apache 2.4

Require local
Require ip 192.168.0

Vous ne devez pas simplement ajouter cela, httpd.confil doit s'agir d'un remplacement.

Pour WAMPServer 3 et supérieur

Dans WAMPServer 3, un hôte virtuel est défini par défaut. Par conséquent, les suggestions ci-dessus ne fonctionnent pas. Vous n'avez plus besoin d'apporter des modifications au httpd.conffichier. Vous devriez le laisser exactement tel que vous l'avez trouvé.

Au lieu de cela, laissez le serveur OFFLINEcar cette fonctionnalité est obsolète et ne fonctionne plus, c'est pourquoi le Online/Offlinemenu est devenu optionnel et désactivé par défaut.

Vous devez maintenant éditer le \wamp\bin\apache\apache{version}\conf\extra\httpd-vhosts.conffichier. Dans WAMPServer3.0.6 et supérieur, il existe en fait un menu qui ouvrira ce fichier dans votre éditeur

left click wampmanager -> Apache -> httpd-vhost.conf

tout comme celui qui a toujours existé et qui édite votre httpd.conffichier.

Cela devrait ressembler à ceci si vous n'avez ajouté aucun de vos propres hôtes virtuels

#
# Virtual Hosts
#

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot c:/wamp/www
    <Directory  "c:/wamp/www/">
        Options +Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

Modifiez simplement le Requireparamètre en fonction de vos besoins EG

Si vous souhaitez autoriser l'accès de n'importe où, remplacez-le Require localpar

Require all granted

Si vous voulez être plus spécifique et sécurisé et n'autoriser que les adresses IP dans votre sous-réseau, ajoutez des droits d'accès comme celui-ci pour autoriser n'importe quel PC de votre sous-réseau

Require local
Require ip 192.168.1

Ou pour être encore plus précis

Require local
Require ip 192.168.1.100
Require ip 192.168.1.101
RiggsFolly
la source
1
Un problème. J'ai plusieurs sites locaux (par exemple 192.168.1.1/mysite1) mais une fois que j'ai essayé sur mon téléphone d'accéder à ce site Web, il semble incomplet pour une raison quelconque. C'est un site wordpress. Connaissez-vous la raison pour laquelle cela se produit?
Ezeewei
1
Oh, j'ai trouvé le problème, car dans DB, ces liens sont basés sur localhost! tout fonctionne parfaitement maintenant: D
Ezeewei
Alors, comment puis-je permettre à TOUS les utilisateurs du réseau d'accéder à l'appareil avec le serveur wamp en cours d'exécution? Comment puis-je écrire l'adresse IP dans cette configuration? J'utilise DHCP.
Mai
Si vous voulez dire une adresse IP dans votre sous-réseau, comme je l'ai dit dans la question ci-dessus, utilisez les 3 premiers quartiles de l'adresse IP
RiggsFolly
4
@RiggsFolly J'ai fait ça mais ça ne marche toujours pas. 403 Interdit.
gegobyte
66

Vous devez autoriser le processus Apache (httpd.exe) à travers le pare-feu (recommandé).

Ou désactivez votre pare-feu sur le LAN (juste pour tester, non recommandé).

Exemple avec Wamp (avec Apache activé):

  1. Vérifiez si Wamp est publié localement si c'est le cas, continuez;
  2. Panneau de contrôle d'accès
  3. Cliquez sur "Pare-feu"
  4. Cliquez sur "Autoriser l'application via le pare-feu"
  5. Cliquez sur "Autoriser certaines applications"
  6. Recherchez et choisissez C: /wamp64/bin/apache2/bin/httpd.exe
  7. Redémarrez Wamp

Ouvrez maintenant le navigateur dans un autre hôte de votre réseau et accédez à votre serveur Apache par IP (par exemple 192.168.0.5). Vous pouvez découvrir l'adresse IP de votre hôte local en tapant ipconfigsur votre invite de commande.

Ça marche

Matteus Barbosa
la source
Assurez-vous que votre serveur Wamp est en cours d'exécution et que vous l'avez déjà défini disponible avec "Mettre en ligne"
Matteus Barbosa
Vider le cache du navigateur peut également résoudre certains problèmes
Matteus Barbosa
3
La partie pare-feu m'a aidé pour Windows 10. Merci!
Pretty Cool
J'avais déjà désactivé le pare-feu Windows, donc je ne pensais pas que cela fonctionnerait - mais l'ajout d'Apache comme exception fonctionnait en fait pour moi. Merci!
Pawel
@Pawel cela n'a pas de sens car un pare-feu désactivé ignore les tables d'exceptions et autorise tout. Assurez-vous que votre logiciel antivirus est désactivé ou que sa couche de pare-feu est également désactivée pour effectuer un test propre.
Matteus Barbosa
13
go to... 
C:\wamp\alias

Dans le dossier d'alias, vous verrez des fichiers tels que phpmyadmin, phpsysinfo, etc ...

ouvrez chaque fichier, et vous pouvez voir à l'intérieur du fichier certaines instructions commentées sont données pour accéder de l'extérieur, comme donner accès à phpmyadmin de l'extérieur remplacer les lignes

Require local

by

Require all granted
Sai Ram
la source
4

Ce qui a finalement fonctionné pour moi, c'est ce que j'ai trouvé ici:

http://www.codeproject.com/Tips/395286/How-to-Access-WAMP-Server-in-LAN-or-WAN

Résumer:

  • set Écoutez httpd.conf:

    Listen 192.168.1.154:8081

  • Ajoutez Autoriser de tous à cette section:

    <Directory "cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory>

  • Définissez une règle de port entrant. Je pense que c'était la partie manquante cruciale pour moi:

Génial! L'étape suivante consiste à ouvrir le port (8081) du serveur afin que tout le monde puisse accéder à votre serveur. Cela dépend du système d'exploitation que vous utilisez. Comme si vous utilisez Windows Vista, suivez les étapes ci-dessous.

Ouvrez le Panneau de configuration >> Système et sécurité >> Pare-feu Windows puis cliquez sur «Paramètres avancés», puis sélectionnez «Règles entrantes» dans le panneau de gauche, puis cliquez sur «Ajouter une règle…». Sélectionnez «PORT» comme option dans la liste, puis dans l'écran suivant, sélectionnez le protocole «TCP» et entrez le numéro de port «8081» sous «Port local spécifique» puis cliquez sur le bouton «Suivant» et sélectionnez «Autoriser la connexion» et puis donnez le nom général et la description de ce port et cliquez sur Terminé.

Vous avez maintenant également terminé l'ouverture du PORT.

Ensuite, «Redémarrez tous les services» de WAMP et accédez à votre machine en LAN ou WAN.

CodyBugstein
la source
192.168.1.154 signifie?
Charlesliament
1
Adresse IP de @Charlesliament l'autre machine
CodyBugstein
1

Parce que je viens de passer par là - je voulais donner ma solution même si elle est un peu ancienne.

J'ai plusieurs ordinateurs sur un routeur domestique et je travaille moi-même sur certains projets. Eh bien, je voulais voir à quoi cela ressemblait sur mes appareils mobiles. Mais WAMP a été paramétré pour que je ne puisse continuer qu'à partir du système de développement. J'ai donc commencé à regarder autour de moi et j'ai trouvé cet article ainsi que quelques autres. Le problème est qu'aucun d'entre eux n'a fonctionné pour moi. J'ai donc dû me débrouiller tout seul.

Ma solution:

Tout d'abord, dans le fichier HTTPD.CONF, vous devez ajouter une ligne à la fin de la liste des périphériques autorisés à accéder à votre serveur WAMP. Donc au lieu de:

#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost

fais-le:

#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost
     Allow from 192.168.78

Ce qui précède indique que tout périphérique qui se trouve sur votre routeur (le «78» est juste un nombre arbitraire choisi pour cette solution. Cela devrait être celui pour lequel votre routeur est configuré. Donc, cela peut être 192.168.1 ou 192.168.0 ou même 192.168.254 - vous devez le rechercher sur votre routeur.) Peut maintenant accéder à votre serveur.

Ce qui précède n'a rien fait pour moi - au début. Il vous reste encore beaucoup à faire. Mais d'abord - ce que vous n'avez PAS besoin de faire. Vous n'avez PAS besoin de modifier le paramètre WAMP de Hors ligne à En ligne. POUR MOI - changer ce paramètre ne fait rien. Je ne sais pas pourquoi - ce n'est tout simplement pas le cas. Alors changez-le si vous le souhaitez - mais je ne pense pas qu'il soit nécessaire de le changer.

Alors que faut-il changer d'autre? Vous devez revenir au début du fichier httpd.conf pour ce prochain changement et c'est vraiment simple. Vous devez ajouter une nouvelle ligne après le

Listen Localhost:80

ajouter

Listen 192.168.78.###:80

Où le "###" correspond à l'adresse IP de votre serveur. Disons que votre serveur est sur le numéro IP 234. Ensuite, la commande ci-dessus deviendrait

Listen localhost:80
Listen 192.168.78.234:80

Encore une fois - le «78» est juste un nombre arbitraire que j'ai choisi. Pour obtenir votre véritable numéro IP, vous devez ouvrir une fenêtre de commande et taper

ipconfig/all

commander. Recherchez votre numéro TCP / IPv4 et définissez-le sur ce numéro ou TCP / IPv6 si c'est tout ce que vous avez (bien que sur les ensembles de routeurs internes, vous ayez généralement un numéro IPv4).

Remarque : Si vous ne savez pas comment ouvrir une fenêtre de commande - vous cliquez sur Démarrer, sélectionnez l'option "Exécuter" et tapez "cmd.exe" dans la boîte de dialogue sans les guillemets. Sur les systèmes plus récents (puisqu'ils continuent de tout changer), il peut s'agir de l'icône des fenêtres blanches ou du cercle ou de Bill Gates qui saute de haut en bas. Quoi qu'il en soit, cliquez dessus.

Une fois que vous avez fait ce qui précède, redémarrez tous les services et tout devrait bien se passer.

Enfin - pourquoi? Pourquoi devez-vous modifier la commande Écouter? Cela a à voir avec localhost. 'localhost' est défini sur 127.0.0.1 et PAS votre adresse IP par défaut. Cela peut être trouvé dans votre fichier hôte qui se trouve généralement dans le dossier system32 sous Windows mais a probablement été déplacé par Microsoft ailleurs. Recherchez-le en ligne pour savoir où il se trouve et allez le regarder. Si vous voyez beaucoup de sites sexuels, pornographiques, etc. dans votre fichier hôte localhost, vous devez vous en débarrasser (à moins que ce ne soit votre truc). Je suggère que RogueKiller (sur AdLice.com) soit utilisé pour examiner votre système car il peut réinitialiser votre fichier hôte pour vous.

Si votre fichier hôte est normal, il ne doit contenir qu'une seule entrée et cette entrée doit définir localhost sur 127.0.0.1. C'est pourquoi l'utilisation de localhost dans le fichier httpd.conf vous permet de ne travailler que sur tout et de tout voir depuis votre ordinateur serveur.

Donc, si vous vous sentez aventureux - changez votre fichier hôte et laissez la commande Listen seule OU changez simplement la commande Listen pour écouter le port 80 sur votre serveur.

NOUVEAU (j'ai oublié de mettre dans cette partie)

Vous devrez peut-être changer votre adresse TCP / IP. (Le mien est déjà configuré, donc je n'ai pas eu besoin de le faire.) Vous devrez rechercher votre système d'exploitation pour savoir comment vous rendre à l'endroit où votre adresse TCP / IP est définie. Sous Windows XP, c'était Panneau de configuration-> Connexions réseau. Cela a changé dans les systèmes d'exploitation ultérieurs, vous devez donc rechercher comment y arriver. Quoi qu'il en soit, une fois sur place, vous verrez votre connexion réseau sans fil ou votre connexion au réseau local (Windows). Fondamentalement, un câble WIFI ou Ethernet. Sélectionnez celui qui est actif et utilisé. Sous Windows, cliquez avec le bouton droit de la souris et sélectionnez Propriétés. Une boîte de dialogue devrait apparaître et vous devriez voir une liste de cases à cocher avec ce qu'elles sont sur le côté. Recherchez celui qui est pour TCP / IP. Il devrait y en avoir un qui dit TCP / IP v4. Sélectionnez-le. (S'il n'y en a pas, vous devez procéder avec prudence.) Cliquez sur le bouton Propriétés et vous devriez obtenir une autre boîte de dialogue. Celui-ci affiche soit "Obtenir une adresse IP automatiquement" ou "Utiliser l'adresse IP suivante" sélectionné. Si c'est le premier, vous devez le remplacer par le second. MAIS AVANT DE FAIRE CELA - ouvrez une fenêtre de commande et tapez la commande ipcongfig / all pour avoir, juste devant vous, quelle est votre passerelle par défaut. Puis changez-le de "Obtenir ..." à "Utiliser ...". Là où il est dit "adresse IP", mettez l'adresse IP que vous souhaitez toujours utiliser. Il s'agit de l'adresse IP que vous avez indiquée dans la commande Écouter ci-dessus. La deuxième ligne (masque de sous-réseau) est généralement 255.255.255.0, ce qui signifie que seul le dernier numéro (c'est-à-dire: 0) change. Ensuite, en regardant la fenêtre de commande placée dans votre passerelle par défaut. Dernier point, mais non des moindres, lorsque vous êtes passé de "Obtenir ..." à "Utiliser ...", les paramètres DNS peuvent avoir changé. Si la section qui traite des paramètres DNS a changé pour "Utiliser ..." et qu'elle est vide, la réponse est simple. Regardez simplement cette sortie ipconfig / all, trouvez le (s) paramètre (s) DNS et mettez-les dans les champs fournis. Une fois terminé, cliquez sur le bouton OK, puis sur le deuxième bouton OK. Une fois la boîte de dialogue fermée, vous devrez peut-être redémarrer votre système pour que les modifications prennent effet. Essayez-le en allant sur Google ou Stack Overflow. Si vous pouvez toujours aller dans certains endroits, aucun redémarrage n'est requis. Sinon, redémarrez. Rappelles toi! Si vous ne pouvez pas accéder à Internet par la suite, tout ce que vous faites est de revenir en arrière et de tout réinitialiser sur l'option "Obtenir ...". La raison la plus probable, après avoir effectué les modifications, pour laquelle vous ne pouvez plus accéder à Internet est que l'adresse TCP / IP que vous avez choisi d'utiliser est déjà utilisée par le routeur. Le dicton "Il ne peut y en avoir qu'une" vaut également pour les adresses TCP / IP. C'est pourquoi je choisis toujours un nombre élevé à une centaine ou un nombre bas à deux cents. Parce que la plupart des configurations DHCP utilisent des nombres inférieurs à cinquante. Ainsi, de cette façon, vous ne heurtez pas le numéro TCP / IP de quelqu'un d'autre.

C'est ainsi que j'ai résolu mon problème.

Mark Manning
la source
Dans quel fichier avez-vous fait cela?
CodyBugstein
Dans le fichier Apache httpd.conf pour la plupart des modifications et le fichier hôte qui se trouve dans le répertoire Windows / System32 (sur XP). Une mise à jour de ce qui précède est requise. Vous pouvez en fait avoir plusieurs commandes LISTEN dans le fichier httpd.conf. Vous pouvez donc avoir: Écoutez localhost: 80 et Écoutez 192.168.78.234:80 l'un après l'autre.
Mark Manning
J'ai décidé de mettre à jour ma réponse sur les changements TCP / IP.
Mark Manning
1

Dans WAMPServer 3, vous ne faites pas cela dans httpd.conf

Au lieu de cela, modifiez \wamp\bin\apache\apache{version}\conf\extra\httpd-vhost.confet effectuez le même chnage sur l'hôte virtuel défini pourlocalhost

WAMPServer 3 est livré avec un hôte virtuel prédéfini pour localhost

Aaska Patel
la source
0

J'ai quelques expériences avec Wamp 3.0 et Apache 2.4.

Après tous les travaux, procédez comme suit:

1- Désactivez nod32.

2- Ajoutez cette ligne pour <VirtualHost *:80>bloquer dans le httpd-vhosts.conffichier:

Require ip 192.168.100 #client ip, allow 192.168.100.### ip's access
ivahidmontazer
la source
0

si vous utilisez Windows et si vous faites tous les commentaires ci-dessus,

Vous pouvez vérifier votre réseau et votre centre de partage.

Centre Réseau et partage -> Paramètres de partage avancés -> Modification du profil personnel ou professionnel

Merci bon travail!

Ferhat KOÇER
la source
-1

c'est simple et ça a vraiment marché pour moi.

run you wamp server => click right mouse button => and click on "put online"

puis ouvrez votre cmd en tant qu'administrateur, et passez ce mot de commande

ipconfig => and press enter

puis beaucoup d'adresses s'affichent, alors il suffit de prendre la première, ça ressemble à cet exemple: Adresse IPv4. . . . . . . . . . . . . .: 192.168.67.190 bravo! , c'est l'adresse que vous utiliserez pour cennecter votre serveur wamp en local.

Nassim
la source
-2

Mettez votre serveur wamp en ligneentrez la description de l'image ici

puis accédez au panneau de configuration > système et sécurité > pare - feu Windows et désactivez le pare-feu Windows

maintenant, vous pouvez accéder à votre serveur wamp à partir d'un autre ordinateur sur le réseau local via l'adresse IP du réseau de l'ordinateur sur lequel le serveur wamp est installé comme http://192.168.2.34/mysite

Shahjahan
la source