J'ai un serveur de test / développement local (HTTP, bien sûr), à l'écoute du port 8000.
Je travaille sur Linux, donc pour tester la page sur Internet Explorer 6, 7, 8, etc. Je lance une machine virtuelle en utilisant VirtualBox; J'ai également besoin de voir à quoi cela ressemble sur Firefox dans un environnement Windows (les polices par exemple sont différentes).
Dans ma vraie machine, j'ouvre le site Web simplement en utilisant l'URL http://localhost:8000
, comment puis-je adresser cet hôte local à partir de la machine virtuelle?
Pour le moment, ma solution consiste à utiliser l'adresse IP. De meilleures idées?
Réponses:
La recherche sur Google a révélé ceci: http://data.agaric.com/localhost-from-virtualbox-xp-install-ubuntu
Il suggère d'utiliser IP:,
http://10.0.2.2
et cela a fonctionné pour moi.J'ai donc édité le fichier hosts
C:\windows\system32\drivers\etc\hosts
et ajouté cette entrée:Si vous testez sur IE8, n'oubliez pas de mettre
http://
dans la barre d'adresse. Mettre directement l'ip ne fonctionnera pas.Par exemple:
la source
Attached to
paramètre de réseau VirtualBox deBridged Adapter
àNAT
pour que cela fonctionne pour moi.localhost
pas à10.0.2.2
cause d'une autorisation merdique qui veut que localhost soit l'adresse :(macOS
J'utilise Virtual Box sur macOS (anciennement OS X), j'utilise Virtual Box pour tester IE sur Windows, etc.
Accédez à IE dans Virtual Box et accédez
localhost
viahttp://10.0.2.2
pourlocalhost
ouhttp://10.0.2.2:3000
pourlocalhost:3000
.J'ai gardé les paramètres réseau comme NAT, pas besoin de pont comme suggéré ci-dessus dans mon cas. Il n'est pas nécessaire de modifier les fichiers de configuration.
la source
Pour activer cela sur OSX, j'ai dû faire ce qui suit:
VirtualBox Preferences -> Network -> Host-only Networks ->
sur l'icône "+". Cliquez sur OK."Settings" icon -> Network -> Adapter 2 ->
liste déroulante "Attaché à:", sélectionnez "Adaptateur hôte uniquement" et votre réseau (vboxnet0
) devrait apparaître ci-dessous par défaut. Cliquez sur OK.http://10.0.2.2/
Vous pouvez vous y référer
localhost
et accéder à d'autres sites hébergés localement en ajoutant leurs références au fichier hosts (C:\windows\system32\drivers\etc\hosts
) comme suit:la source
IPv4 Address
(par exemple192.168.56.1
). Ensuite, une fois que vous démarrez la machine virtuelle, ouvrez votre navigateur et accédez àhttp://192.168.56.1:3000
Le réseau de votre machine virtuelle est probablement défini sur NAT. Si vous définissez votre réseau sur Bridged, vous devriez pouvoir accéder à votre machine hôte par son nom d'hôte. Par exemple, si votre nom d'hôte est «jsmith-Precision-7510» et que vous souhaitez ouvrir http: // localhost: 3000 / , vous pourrez afficher cette page sur http: // jsmith-Precision-7510: 3000 / .
Pour trouver votre nom d'hôte, ouvrez un terminal / une console, puis exécutez la commande
hostname
. Votre nom d'hôte sera affiché sur la ligne suivante.Consultez la documentation VirtualBox pour obtenir des instructions sur la façon de définir vos paramètres de réseau sur Bridged.
la source
whatever.local
moins d'installer Bonjour.J'ai dû aller dans virtualbox et changer mes paramètres réseau en «NAT». Après cela, j'ai pu
localhost
exécuter sur ma machine hôte à partir de mon émulateur sur virtualbox viahttp://10.0.2.2:3000
la source
http://10.0.2.2
exactement comme décrit ici par @Pytth.Si vous avez un adaptateur attaché au NAT , de nos jours, c'est une solution meilleure et plus élégante pour définir la redirection de port vers les ports locaux.
Settings
>Network
>Adapter
>Advanced
>Port forwarding
Insérez simplement une nouvelle règle et définissez
Host port
etGuest port
sur80
(pour http) ou22
(pour ssh), et ainsi de suite.Ensuite, vous pouvez accéder à cette machine en entrant juste
http://localhost
Vous pouvez également vouloir basculer NAT en mode transparent.
la source
J'ai trouvé que cela
10.0.2.2:<port>
fonctionne, mais seulement si le mode Promiscuous est correctement défini. Après avoir installé ma machine virtuelle, je suis allé dans Paramètres> Réseau> Adaptateur 1.NAT est défini par défaut et la liste déroulante Mode de promiscuité est désactivée. Je suis passé de NAT à Bridged Adapter, qui a activé la liste déroulante Promiscuous Mode, puis j'ai changé la valeur de "Deny" en "Allow VMs". Je suis ensuite revenu au NAT, qui a de nouveau désactivé le mode Promiscuous, mais a conservé la nouvelle valeur.
Après seulement ce changement, j'ai pu lancer ma VM et voir mes machines hôtes
localhost:<port>
sur ma VM à10.0.2.2:<port>
.la source
Le fait de ne pas pouvoir rediriger les demandes vers l'hôte local de la machine virtuelle vers l'hôte local de l'hôte est désormais intégré à Windows ( https://tools.ietf.org/html/rfc6761#section-6.3 ), y compris les machines virtuelles disponibles sur https: //developer.microsoft.com/en-us/microsoft-edge/tools/vms/
Pour des raisons de sécurité, Microsoft empêche désormais les entrées du fichier hôte de remplacer l'adresse de localhost par autre chose que l'adresse de bouclage :: 1. Donc, en ajoutant une ligne au fichier hôte de la machine virtuelle, comme
sera ignoré.
Il existe deux façons (à ma connaissance) de contourner cela:
1) utilisez NETSH pour porter le proxy vers l'hôte
(où 10.0.2.2 est la passerelle par défaut sur la machine virtuelle et 8000 est le port que vous souhaitez résoudre sur l'hôte.)
2) Configurez IIS pour effectuer le routage des demandes d'application, puis réécrivez les demandes pour localhost: port sur l'hôte IP: port
https://docs.microsoft.com/en-us/iis/extensions/configuring-application-request-routing-arr/creating-a-forward-proxy-using-application-request-routing
la source
netsh
c'est ce qui m'a aidé, j'ai essayé tout ce que j'ai trouvé sur le net, mais sans succès. Cela permettra d'accéder<protocol>://localhost:<port>
, au lieu d'accéder directement par IP. Cela devrait être la réponse acceptée pour Windows 10.MacOS
Si vous souhaitez configurer un environnement Windows avec Virtualbox sur un Mac, utilisez simplement les paramètres NAT par défaut sur l'adaptateur, et dans votre machine virtuelle Windows, accédez au fichier hosts et ajoutez les éléments suivants:
Contrairement aux réponses ci-dessus, il est important d'inclure les deux lignes, sinon cela ne fonctionnera pas.
la source
Vous devez modifier votre fichier d'hôtes sur votre machine virtuelle Windows de la même manière que pour votre machine hôte locale:
C: \ WINDOWS \ system32 \ drivers \ etc \ hosts
Et liez vos hôtes virtuels à 10.0.2.2, si vous utilisez uniquement localhost, remplacez
127.0.0.1 localhost avec 10.0.2.2 localhost
Par exemple:
Cela indique à votre machine virtuelle de pointer vers votre machine locale pour ces noms de domaine.
la source
Vous n'avez pas besoin de modifier le fichier d'hôtes ou toute configuration de Virtual Box. Conservez les paramètres dans NAT. Accédez à votre instance Windows et exécutez "cmd" ou ouvrez cmd.exe. Exécutez la commande "ipconfig" et obtenez l' adresse IP de la passerelle par défaut . Parcourir http://10.0.2.2:8080 sur Windows IE que vous verrez est le même que votre Mac Safari http: // localhost: 8080 / ou http://127.0.0.1:8080
la source
localhost
. (par exemple, webpack-dev-server)10.2.2.3 or .4
? Je peux cingler.2
aussi bien que ceux - VM est Windows Server fonctionnant sous Windows ServerUne combinaison de quelques éléments a fini par faire fonctionner les choses de mon côté. Exécution d'un serveur flask sur macosx.
Dans ma machine virtuelle Windows, j'ai édité le fichier hosts:
C:\windows\system32\drivers\etc\hosts
10.0.2.2 outer
Arrêtez VM et sur mon Mac dans VirtualBox:
VirtualBox > preferences > Network > Host-only Networks > +
ajouter un réseauvboxnet1
My_VM > settings > Network > Adapter 1
.Enable Network Adapter
et réglezAttached to:
surBridged Adapter
.Advanced > Promiscuous Mode:
surAllow VMs
.OK
My_VM > settings > Network > Adapter 1
.Attached to:
retour àNAT
.Ensuite, je suis allé à
Adapter 2
Attached to:
surHost-only Adapter
et sélectionnez le réseau ajouté précédentvboxnet1
.J'ai démarré mon serveur sur mon Mac, en cours d'exécution
127.0.0.1:5000
et c'était désormais accessible sur mon VM àhttp://10.0.2.2:5000
Man quel cauchemar pour tester sur IE sur mac. Comment n'y a-t-il pas un moyen plus simple?
la source
rails s -b 127.0.0.1
et y ai accédé à partir de toutes les machines virtuelleshttp://10.0.2.2:3000
et cela a fonctionné. Je me demande si le changement de réglage par le haut a persisté d'une manière ou d'une autre même après avoir tout roulé.vboxnet1
, mais cela a fini par fonctionner. Merci pour les indices!J'ai résolu en ajoutant une redirection de port dans les paramètres de Virtualbox sous réseau. Host IP set 127.0.0.1 port: 8080 IP invité: Donnez n'importe quelle IP pour le site Web (disons 10.0.2.5) port: 8080 Maintenant depuis l'accès à la machine invitée http://10.0.2.5:8080 en utilisant IE
la source
Dans la boîte virtuelle, comme indiqué ci-dessus, vous pouvez ajouter ce fichier d'hôtes de ligne
mais pour l'enregistrer, si vous n'avez pas d'administrateur directement dans votre machine virtuelle, déplacez simplement le fichier hosts sur le bureau, puis modifiez-le pour ajouter la ligne 10.0 .... externe, enregistrez le fichier et déplacez-le à son emplacement d'origine.
la source
vérifiez si vous pouvez frapper votre machine parent avec:
ipconfig
(obtenez votre adresse IP)ping <ip>
outelnet <ip> <port>
Si vous ne pouvez pas accéder au port, essayez d'ajouter une nouvelle règle entrante dans votre pare-feu parent autorisant les ports locaux.
J'ai pu accéder
http://<ip>:<port>
la source
Dans Virtual Box
Maintenant, le bit délicat est votre hôte local, si vous exécutez à partir de Node.js définissez l'adresse IP sur 0.0.0.0, puis recherchez votre propre adresse IP, par exemple cmd: ipconfig -> 10.0.1.3
Tapez cette adresse avec le numéro de port. Et ça marchera.
la source
Étapes générales:
la source
Sur Windows avec un Windows 7 virtuel, la seule chose qui fonctionnait pour moi était d'utiliser NAT et la redirection de port (impossible de faire fonctionner une connexion pontée). J'ai trouvé un tutoriel ici: http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/ (faites défiler jusqu'à la partie avec " Redirection de ports vers une machine virtuelle ").
Avec ces changements, j'ai pu accéder au site Web xampp avec " http: //192.168.xx.x: 8888 / mywebsite " dans Internet Explorer 10 sur ma machine virtuelle.
J'ai trouvé l'IP dans le Panneau de configuration XAMPP> Netstat ("Système").
la source
Si vous utilisez Virtual Box, vous pouvez connecter Mac OSX (et je pense que Linux) à votre machine Windows virtuelle en utilisant une seule ligne de code -> je suggère d'arrêter la boîte avant de l'exécuter dans le terminal.
VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on
Je noterai que cela provient des documents de Dinghy, que j'exécute, mais c'est une commande de boîte virtuelle, donc il ne devrait pas vraiment se soucier de ce que vous utilisez tant que sa boîte virtuelle
la source
J'ai besoin de courir sur localhost, pas sur une IP bizarre.
1) À partir de votre terminal Mac,
iconfig -a
recherchez votre adresse IP locale. C'est probablement le dernier.en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV> ether 38:c9:86:32:0e:69 inet6 fe80::ea:393e:a54f:635%en7 prefixlen 64 secured scopeid 0xe inet 10.1.5.60 netmask 0xfffffe00 broadcast 10.1.5.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex,flow-control>) status: active
par exemple 10.1.5.60
2) démarrez votre image Windows. démarrer> taper
cmd
pour obtenir un terminal3)
notepad c:\windows\system32\drivers\etc\hosts
4) ajoutez la ligne suivante
10.1.5.60 localhost
5) ouvrez IE, et l'url suivante devrait frapper le serveur fonctionnant sur votre mac:
http://localhost:3000/
la source
Obtenez l'IP de la machine exécutant Apache (inet addr: in
ifconfig
) et entrez-la dans la barre d'adresse du navigateur de boîte virtuelle.la source
En fait, la réponse de user477494 est en principe correcte.
J'ai appliqué la même logique dans d'autres environnements (hôte OS X - Windows XP virtuel) et cela fait l'affaire. J'ai dû faire défiler la pile LAMP de l'hôte pour obtenir l'adresse IP et le port Apache à résoudre, mais une fois que j'ai compris cela, je riais.
la source