
Ich versuche, ein Vagrant VM-Setup zu erhalten, das mir zugeteilt wurde (ich habe es also nicht selbst konfiguriert). Ich habe die VM vagrant up
erfolgreich installiert, aber wenn ich versuche, den Hostnamen über einen Browser aufzurufen, tritt ein Timeout auf. Ich habe den Hostnamen auch in meiner Hosts-Datei festgelegt.
Konfiguration im Vagrantfile:
# Networking
config.vm.network :private_network, ip: "192.168.33.28"
config.vm.network :forwarded_port, guest: 80, host: 80, auto_correct: true
config.vm.network :forwarded_port, guest: 443, host: 443, auto_correct: true
config.vm.hostname = "mysite.local"
Zeile in meiner Hosts-Datei:
192.168.33.28 mysite.local secure.mysite.local
Wenn ich versuche, zu navigierenhttp://mysite.localIch bekomme eine Auszeit.
Ich habe versucht, die Vagrantfile-Konfiguration wie folgt zu ändern:
config.vm.network :forwarded_port, guest: 80, host: 8080, auto_correct: true
und dann ausführen vagrant reload
. Danach erhalte ich immer noch ein Timeout für, http://mysite.local:8080
aber ich erhalte eine erfolgreiche Antwort fürhttp://localhost:8080
Danke schön!
Antwort1
Erstens können Sie ohne Root/Sudo keine Verbindung zu Ports unter 1024 (auf dem Host) herstellen (und Sie sollten Vagrant nicht als Root ausführen). Ich nehme an, Sie erhalten daraufhin eine Fehler-/Warnmeldung, aber vielleicht auto_correct
erfolgt die Verbindung auch nur zu einem nicht privilegierten Port.
Und da Sie bereits eine private_network
IP-Adresse für die Maschine angeben, benötigen Sie nicht einmal eine Portweiterleitung. Eine direkte Verbindung sollte funktionieren.
Für das Timeout fallen mir zumindest folgende Gründe ein:
- Eine Firewall auf dem Gast oder Host
- HTTP-Proxy-Konfiguration, die „mysite.local“ oder „192.168.33.28“ nicht ausschließt
- Der Webserver leitet weiterhttp://mysite.localURLs zu einer nicht erreichbaren Domain
- 192.168.33.28 wird von einer anderen VM verwendet oder überlappt sich mit anderen Netzwerken auf dem Host