2008-09-14 40 views
114

我剛剛使用VMware Fusion在我的Mac上創建了一個新的Windows XP虛擬機。 VM正在使用NAT來共享主機的Internet連接。如何從訪客機器訪問主機?

如何訪問Rails應用程序,該應用程序可以使用http://localhost:3000在Mac本身上訪問?

+1

也許這個問題應該遷移到[超級用戶](http://superuser.com/)或[服務器故障](http://serverfault.com/)。 – jfmercer 2015-04-28 17:06:56

回答

118

在XP機器上,通過轉到命令提示符並鍵入「ipconfig」來查找您的IP地址。嘗試用1或2替換最後一個數字。例如,如果您的IP地址是192.168.78.128,請使用http://192.168.78.1:3000

+2

爲我節省了幾個小時 - 在背上先生自己! – iancrowther 2011-11-12 22:23:36

+0

我使用Lion作爲Host和Win7作爲Guest,但是我無法使用它訪問我的Mac上的rails應用程序。爲什麼? – larryzhao 2011-12-30 08:10:21

+0

如果您的本地網絡IP地址是:192.168.1.122那麼您應該使用http://192.168.1.122:3000,這應該工作 – dbslone 2012-07-18 16:05:09

76

您可以使用您的主機的Mac(或任何其他Mac網絡上的)的「本地」的名字:

http://macname.local:3000/

其中macname的是你的主機(或其他所需的)的Mac的網絡名稱。

9
  1. 在XP機器上,開始 - >連接到 - >顯示所有連接。
  2. 雙擊本地連接。
  3. 單擊支持選項卡。
  4. 以默認網關IP <gateway-ip>並在瀏覽器中點擊http:// <gateway-ip>:3000。

問題:你必須在地址中有http://或IE會給你「網頁無法顯示」。

13

對於未來的訪問者:一旦你知道了IP地址,你可以添加一個條目到位於C:\ Windows \ system32 \ drivers \ etc \ hosts的Windows主機文件,以映射IP地址轉換爲(虛擬)服務器名稱。添加一行:

192.168.78.1 myrubyapp 

現在你可以在地址http://myrubyapp:3000

訪問,在IE的網站,如果你使用Apache下,你需要這個提供正確的服務器名稱的虛擬主機。

10

由於這個問題是相當古老的,並提到XP,這是一個新的操作系統的替代品;


如果你搖擺Vista的的Windows 7作爲Guest OS,你必須在通過Apache主機虛擬主機設置,這裏是如何設置:

在主機OS ,您需要確保通過NAT完成網絡連接;

  1. 右鍵點擊虛擬機窗口中的網絡圖標(右下角)
  2. 選擇「NAT」
  3. 選擇「連接」
  4. 等待客戶機操作系統重新連接到網絡

然後,在Guest OS中;

  1. 點擊開始>網絡>網絡&共享中心
  2. 點擊 「查看狀態」 旁邊的網絡連接
  3. 點擊 「詳細信息」
  4. 查找的 「IPv4默認網關」
  5. 打開寫字板
  6. 編輯C:\ Windows \ System32 \ drivers \ etc \ hosts
  7. 在文件中添加一行如:

    [default-gateway-IP] www.example.com 
    [default-gateway-IP] example.com 
    
  8. 保存

  9. 嘗試打開http://www.example.comhttp://example.com在IE

5

我只花了一個小時的努力得到這個工作,下面的步驟,以便但我的結束有點不同。

VMWare的設置

1)設置VMWare的連接NAT
2)運行> CMD> IPCONFIG>複製默認網關值
3)編輯hosts文件(C:/ Windows的/ SYSTEM32 /司機/ etc/hosts文件)

  • 添加到您的主機文件:

<gateway-ip> yourserver.local

OS X設置

1)編輯Apache的配置(例如,須藤VIM的/ etc/apache2的/ httpd的。CONF)

  • 這個虛擬主機條目添加到您的httpd.conf文件:
 
NameVirtualHost 127.0.0.1 
<VirtualHost 127.0.0.1> 
    DocumentRoot "/path/to/your/project" 
    ServerName yourserver.local 

    <Directory "/path/to/your/project"> 
     AllowOverride All 
     Options All 
    </Directory> 
</VirtualHost> 
  • 保存&退出(:WQ)

2)編輯您的主機文件(sudo vim/etc/hosts)

  • 加入這一行到您的主機文件

127.0.0.1 yourserver.local

3)重啓Apache(須藤的apachectl重新啓動)

我發現,我不得不切換連接設置在VMWare以重新啓動這些設置爲我工作之前的連接。我希望這有幫助。

./manage.py的runserver [默認網關IP]:8000

因爲

https://docs.djangoproject.com/en/dev/ref/django-admin/

注意,默認

6

Django的做到以下幾點是很重要的IP地址127.0.0.1不能從網絡上的其他計算機訪問。要使開發服務器可以在網絡上的其他計算機上查看,請使用其自己的IP地址(例如192.168.2.1)或0.0.0.0或::(啓用IPv6)。

相關問題