it-swarm.com.de

VMWare-Fusion: Verbindung zum Host-Webserver vom Gast aus

Ich bin ein Webentwickler und meine Entwicklungsplattform ist Mac. Ich habe zu Testzwecken eine Kopie von Windows XP in VMWare Fusion installiert und mit IE meine Websites vorgezogen. Auf meinem Mac läuft Apache mit mehreren Subdomains wie test.localhost usw.

Wie kann ich vom Gast-Betriebssystem aus auf dem Host-Betriebssystem auf den Webserver zugreifen?

Danke im Voraus.

32
farzan

VMWare Fusion registriert eine IP-Adresse auf Ihrem Mac, und Sie können diese verwenden, um von der virtuellen Maschine auf den Host zu verweisen. Sie finden es mit ifconfig vmnet8. Meines 192.168.36.1 , Ihr könnte dasselbe sein.

Wenn Sie virtuelle Apache-Hosts verwenden und versuchen, http von dieser Adresse auf Ihrer virtuellen Maschine abzurufen, wird wahrscheinlich die Standard-Apache-Seite angezeigt. Sie müssen die Domänen auf Ihrem Windows-Host zuordnen:

Öffnen Sie C:\WINDOWS\system32\drivers\etc\hosts im Editor und fügen Sie Ihre Hostnamen (1 pro Zeile) hinzu:

192.168.36.1    test.localhost

Wenn Sie dann http://test.localhost/ in den IE eingeben, wird er an den virtuellen Apache-Host Ihres Mac weitergeleitet.

46
Andrew Vit

Verwenden von Fusion 6.0.2 unter OS X 10.9 Mavericks

Im Hostsystem (Mac)

  1. schalten Sie Ihre virtuelle Maschine aus

  2. Öffnen Sie das Menü "Virtual Machine | Network Adapter | Network Adapter Settings ..."

  3. wählen Sie im Abschnitt "Bridget-Netzwerk" die Option "Autodetect":

 Network Adapater

  1. schalten Sie Ihre virtuelle Maschine ein

Im Gastsystem (Win7)

  1. klicken Sie mit der rechten Maustaste auf die Anwendung Notepad und wählen Sie "Als Administrator ausführen" aus:

 Run Notepad as Administrator

wenn Win7 fragt: "Möchten Sie, dass das folgende Programm Änderungen an diesem Computer vornimmt?" klicken Sie auf die Schaltfläche "Ja"

  1. navigieren Sie zu: "Computer | Lokale Festplatte (C :) | Windows | System32 | Treiber | etc"

  2. wählen Sie "Alle Dateien" im Dropdown-Menü rechts neben dem Feld "Dateiname:"

  3. doppelklicken Sie auf die Datei "hosts"

Im Hostsystem (Mac)

  1. Öffnen Sie Ihre Systemeinstellungen und wählen Sie "Netzwerk". Suchen Sie in Ihrer verbundenen Schnittstelle nach der Mac-IP:

 Mac Network IP Address

192.168.1.106 im Beispiel

Im Gastsystem (Win7)

  1. geben Sie in Ihrem Notizblockfenster die Mac-IP-Adresse ein, gefolgt von den Sites, die Sie in Ihrem Host-System (Mac) erreichen möchten:

 hosts file in VM

im Beispiel habe ich zwei Standorte konfiguriert: localhost und caeb.leo

  1. Öffnen Sie den Browser und Sie können die auf Ihrem Host-System gehosteten Sites sehen:

 Example

Ich hoffe es hilft!

49
Camaleo

Andrews Antwort ist zwar korrekt, jedoch fehlt ein erheblicher Teil, nämlich dass vmnet8 nur verwendet wird, wenn das Gastbetriebssystem auf die Option Bridged network eingestellt ist. 

Wenn Ihr Gastbetriebssystem die Netzwerkoption NAT verwendet, wie in diesem Windows-Host-Beispiel gezeigt, müssen Sie stattdessen vmnet1 verwenden. 

enter image description here

In diesem Fall ermöglicht die IP von vmnet1 192.168.119.1 den Zugriff auf den Host-Webserver, während die IP von vmnet8 nirgendwo hinführt. 

enter image description here

12
March Ho

Beachten Sie, ich gebe diese Antwort für diejenigen, die wie ich die gleiche Frage wie der Titel haben, aber nicht genau dieselben Besonderheiten beim Ausführen von Apache als rohe lokale Installation haben

doppelte Anmerkung, diese Antwort ist eine Mischung aus Andrews und Camaleos Antwort, da beide in meinem Setup nicht funktionierten (nicht auf Macs IP verweisen und Bridged Networkings "Autodetect" aus irgendeinem Grund nicht funktioniert hat?), nicht sicher, ob die Aufnahme dabei ist von Docker Machine verursacht den Schluckauf

Wenn Sie sich wie folgt einrichten: 

  • (Host) Mac (Beispiel IP 192.168.1.249)
    • (Gast) Docker-Maschine (Beispiel IP 192.168.99.102)
      • Apache (Port 80)
    • VMware Fusion 10
      • (Gast) Windows 10 (Beispiel IP 192.168.68.142)

Schritt 1

Öffnen Sie in Windows 10 VM den Editor als Administrator (rechte Maustaste für die Option). Navigieren Sie zu C:\Windows\System32\drivers\etc und wählen Sie anstelle von Text Documents(*.txt)All Files aus. Öffnen Sie die Datei hosts und fügen Sie einen Host-Eintrag für die IP-Adresse Ihrer Docker Machine hinzu (über docker-machine ls). In unserem obigen Beispielsetup würde die Zeile so aussehen:

192.168.99.102  myapp.test  # or some other fitting name

Änderungen speichern.

Schritt 2

Hinweis: Sie müssen Ihre virtuelle Maschine in VMware Fusion 10 nicht anhalten oder neu starten, wenn Sie Netzwerkänderungen vornehmen.

Wählen Sie in den VMware Fusion-Menüs Virtual Machine/Network Adapter/Network Adapter Settings aus. Wählen Sie Share with my Mac

Wenn "Mit meinem Mac freigeben" bereits ausgewählt ist, wählen Sie eine andere Netzwerkadapteroption (wie Bridged Network Automatic) aus, und wählen Sie dann "Mit meinem Mac freigeben" erneut aus, um sicherzustellen, dass Änderungen an der Hostdatei vorgenommen werden.

Schritt 3

In Windows VM werden Teständerungen vorgenommen, indem Sie die gewünschte Adresse (z. B. "myapp.test" wie oben gezeigt) anpingen oder indem Sie Edge/Chrome öffnen, um zu prüfen, ob die Webseite geladen wird

Beachten Sie, dass die Verwendung eines Domainnamens, der mit .test endet, empfohlen wird oder Chrome möglicherweise weiterhin Probleme mit HSTS-Fehlern hat

0
Marc