web-dev-qa-db-fra.com

VMWare fusion: connexion au serveur Web de l'hôte à partir d'un invité

Je suis un développeur Web et ma plate-forme de développement est Mac. J'ai installé une copie de Windows XP dans VMWare Fusion à des fins de test et d'utilisation de IE pour afficher mes sites Web. Apache tourne sur mon Mac avec plusieurs sous-domaines, comme test.localhost etc.

Comment puis-je accéder au serveur Web sur le système d'exploitation hôte à partir du système d'exploitation invité?

Merci d'avance.

32
farzan

VMWare Fusion enregistre une adresse IP sur votre Mac et vous pouvez l'utiliser pour pointer sur l'hôte à partir de la machine virtuelle. Vous pouvez le trouver avec ifconfig vmnet8. Le mien 192.168.36.1 , le vôtre pourrait être le même.

Si vous utilisez des hôtes virtuels Apache et que vous essayez d’obtenir http à partir de cette adresse sur votre machine virtuelle, la page Apache par défaut sera probablement affichée. Vous aurez besoin de mapper les domaines sur votre hôte Windows:

Ouvrez C:\WINDOWS\system32\drivers\etc\hosts dans le Bloc-notes et ajoutez vos noms d’hôte, 1 par ligne:

192.168.36.1    test.localhost

Ensuite, lorsque vous insérez http://test.localhost/ dans IE, il sera acheminé vers l'hôte virtuel Apache de votre Mac.

46
Andrew Vit

Utilisation de Fusion 6.0.2 sur OS X 10.9 Mavericks

Dans le système hôte (Mac)

  1. éteindre votre machine virtuelle

  2. ouvrez le menu "Machine virtuelle | Adaptateur réseau | Paramètres de l'adaptateur réseau ..."

  3. dans la section "Bridget Networking", choisissez "Autodetect":

 Network Adapater

  1. allumer votre machine virtuelle

Dans le système invité (Win7)

  1. faites un clic droit sur l'application Bloc-notes, puis sélectionnez "Exécuter en tant qu'administrateur":

 Run Notepad as Administrator

lorsque Win7 demande: "Voulez-vous autoriser le programme suivant à modifier cet ordinateur?" cliquez sur le bouton "Oui"

  1. accédez à: "Ordinateur | Disque local (C :) | Windows | System32 | drivers | etc"

  2. sélectionnez "Tous les fichiers" dans le menu déroulant à droite du champ "nom de fichier:"

  3. double-cliquez sur le fichier "hôtes"

Dans le système hôte (Mac)

  1. ouvrez vos préférences système et sélectionnez "Réseau"; dans votre interface connectée, recherchez l'adresse IP du Mac:

 Mac Network IP Address

192.168.1.106 dans l'exemple

Dans le système invité (Win7)

  1. dans la fenêtre du bloc-notes, entrez l'adresse IP du Mac suivie des sites que vous souhaitez atteindre dans votre système hôte (Mac):

 hosts file in VM

dans l'exemple, j'ai configuré deux sites: localhost et caeb.leo

  1. ouvrez le navigateur et vous pourrez voir les sites hébergés sur votre système hôte:

 Example

J'espère que ça aide!

49
Camaleo

Andrew répond , bien que correct, il en manque une partie importante, à savoir que vmnet8 n'est utilisé que lorsque le système d'exploitation invité est configuré pour utiliser l'option de réseau ponté. 

Si votre système d'exploitation invité utilise l'option réseau NAT, comme illustré dans cet exemple d'hôte Windows, vous devrez utiliser vmnet1 à la place. 

enter image description here

Dans ce cas, l'adresse IP de vmnet1 192.168.119.1 permet d'accéder au serveur Web de l'hôte, alors que l'adresse IP de vmnet8 ne mène nulle part. 

enter image description here

12
March Ho

remarque, je donne cette réponse à ceux qui, comme moi, ont la même question que le titre mais pas exactement les mêmes spécificités de l'exécution d'Apache en tant qu'installation brute locale

double note, cette réponse est un mélange de la réponse de Andrew et Camaleo puisque ni l'un ni l'autre n'a fonctionné dans ma configuration (ne pointant pas sur l'IP de Mac et "Autodetect" de Bridged Networking ne fonctionnait pas pour une raison quelconque?), je ne sais pas si l'inclusion de Docker Machine provoque le hoquet

Si vous êtes configuré, c'est comme ça: 

  • (Hôte) Mac (exemple d'adresse 192.168.1.249)
    • (Invité) Machine Docker (exemple ip 192.168.99.102)
      • Apache (port 80)
    • VMware Fusion 10
      • (Invité) Windows 10 (exemple ip 192.168.68.142)

Étape 1

Dans Windows 10 VM, ouvrez le Bloc-notes en tant qu'administrateur (cliquez avec le bouton droit sur le bloc-notes pour l'option). Accédez à C:\Windows\System32\drivers\etc et au lieu de Text Documents(*.txt), sélectionnez All Files. Ouvrez le fichier hosts et ajoutez une entrée d'hôtes pour l'adresse IP de votre ordinateur Docker (via docker-machine ls). Selon notre exemple de configuration ci-dessus, la ligne ressemblerait à ceci:

192.168.99.102  myapp.test  # or some other fitting name

Sauvegarder les modifications.

Étape 2

Remarque: Il n'est pas nécessaire d'arrêter ou de redémarrer votre machine virtuelle dans VMware Fusion 10 lors de modifications du réseau.

Dans les menus de VMware Fusion, sélectionnez Virtual Machine/Network Adapter/Network Adapter Settings. Choisissez Share with my Mac

Si "Partager avec mon Mac" est déjà sélectionné, sélectionnez une autre option d'adaptateur réseau (telle que Bridged Network Automatic), puis re-sélectionnez "Partager avec mon Mac" pour vous assurer que les modifications apportées au fichier de l'hôte sont prises en compte

Étape 3

Les modifications de test sont en place à partir de Windows VM en envoyant une requête ping à l'adresse souhaitée (par exemple, "myapp.test" comme indiqué ci-dessus) ou en ouvrant Edge/Chrome en vérifiant si la page Web est chargée.

Notez que l'utilisation d'un nom de domaine se terminant par .test est recommandée ou que Chrome peut toujours rencontrer des problèmes avec les erreurs HSTS

0
Marc