
我正在嘗試獲取已分發給我的 Vagrant VM 設定(因此我自己沒有配置它)。我已經成功安裝了虛擬機vagrant up
,但是當我嘗試使用瀏覽器存取主機名時,出現逾時。我也在我的主機檔案中設定了主機名稱。
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"
我的主機檔案中的行:
192.168.33.28 mysite.local secure.mysite.local
當我嘗試瀏覽到http://mysite.local我得到一個超時。
我嘗試將 Vagrantfile 配置更改為:
config.vm.network :forwarded_port, guest: 80, host: 8080, auto_correct: true
然後運行vagrant reload
。此後我仍然會超時,http://mysite.local:8080
但我得到了成功的回應http://localhost:8080
謝謝你!
答案1
首先,如果沒有 root/sudo,你不能綁定到低於 1024 的連接埠(在主機上)(而且你不應該以 root 身分執行 Vagrant)。我假設您從中收到一些錯誤/警告訊息,但也許只是auto_correct
綁定到一些非特權連接埠。
由於您已經private_network
為機器指定了 IP 位址,因此您甚至不需要任何連接埠轉送。直接連接應該可以。
對於超時我能想到的至少有以下幾個原因:
- 訪客或主機上的防火牆
- HTTP 代理程式配置不排除“mysite.local”或“192.168.33.28”
- Web 伺服器重新導向http://mysite.local無法存取的網域的 URL
- 192.168.33.28 被另一個虛擬機器使用或與主機上的其他網路重疊