839

ポート 8000 をリッスンするローカル テスト/開発サーバー (もちろん HTTP) があります。

私は Linux で作業しているので、Internet Explorer 6、7、8 などでページをテストします。VirtualBox を使用して仮想マシンを実行します。また、Windows 環境の Firefox でどのように表示されるかを確認する必要があります (たとえば、フォントが異なります)。

実際のマシンでは、単に URL を使用して Web サイトを開きますhttp://localhost:8000。仮想マシンからこのローカルホストにアクセスするにはどうすればよいですか?

現時点での私の回避策は、IP アドレスを使用することです。より良いアイデアはありますか?

4

22 に答える 22

984

グーグルはこれを見つけました:http://data.agaric.com/localhost-from-virtualbox-xp-install-ubuntu

IP: を使用することが提案されてhttp://10.0.2.2おり、私にとってはうまくいきました。

そのため、hosts ファイルを編集し、次のC:\windows\system32\drivers\etc\hostsエントリを追加しました。

10.0.2.2   outer

IE8 でテストしている場合は、忘れずにhttp://アドレス バーに入力してください。IPを直接入力するだけでは機能しません。

例えば:

http://10.0.2.2:3000/
于 2009-08-11T18:27:55.890 に答える
427

マックOS

私はmacOS(以前のOS X)でVirtual Boxを実行しており、VirtualBoxを使用してWindowsでIEをテストしています。

Virtual BoxでIEに移動し、 for 、またはforlocalhostを介してアクセスします。http://10.0.2.2localhosthttp://10.0.2.2:3000localhost:3000

ネットワーク設定をNATとして保持しました。私の場合、上記のようにブリッジは必要ありません。設定ファイルを編集する必要はありません。

于 2012-10-23T09:08:27.340 に答える
85

OSX でこれを有効にするには、次のことを行う必要がありました。

  1. 仮想マシンをシャットダウンします。
  2. VirtualBox Preferences -> Network -> Host-only Networks ->「+」アイコンをクリックします。[OK] をクリックします。
  3. ボックスを選択し、["Settings" icon -> Network -> Adapter 2 ->接続先:] ドロップダウンで [ホストオンリー アダプター] を選択すると、ネットワーク ( vboxnet0) がデフォルトで下に表示されます。[OK] をクリックします。
  4. ボックスを再起動すると、localhost にアクセスできるはずです。http://10.0.2.2/

localhost次のようにホスト ファイル ( C:\windows\system32\drivers\etc\hosts)に参照を追加することで、他のローカルホスト サイトにアクセスして参照できます。

10.0.2.2    localhost
10.0.2.2    subdomain.localhost
于 2014-03-28T21:41:32.847 に答える
59

ほとんどの場合、仮想マシンのネットワークが NAT に設定されています。ネットワークをブリッジに設定すると、ホスト名でホスト マシンにアクセスできるはずです。たとえば、ホスト名が「jsmith-Precision-7510」で、http://localhost:3000/を開く場合、 http://jsmith-Precision-7510:3000/でそのページを表示できます。

ホスト名を見つけるには、ターミナル/コンソールを開き、コマンドを実行しhostnameます。次の行にホスト名が出力されます。

ネットワーク設定をブリッジに設定する方法については、 VirtualBox のドキュメントを参照してください。

于 2009-08-11T18:08:00.657 に答える
40

NATにアダプターが接続されている場合、最近では、ポート転送をローカル ポートに設定する方が適切で洗練されたソリューションです。

Settings> Network> Adapter> Advanced>Port forwarding

新しいルールを挿入Host portGuest portて、80(http の場合) または22(ssh の場合) などに設定します。

次に、入力するだけでそのマシンにアクセスできますhttp://localhost

NAT をトランスペアレント モードに切り替えることもできます。

于 2013-06-27T18:15:10.010 に答える
36

無差別モードが正しく設定されて10.0.2.2:<port>いる場合にのみ機能します。VM をインストールした後、[設定] > [ネットワーク] > [アダプター 1] に移動しました。

NAT はデフォルトで設定されており、Promiscuous Mode ドロップダウンは無効になっています。NAT からブリッジ アダプターに切り替えて、プロミスキャス モードのドロップダウンを有効にし、値を「拒否」から「VM を許可」に変更しました。次に、プロミスキャス モードを再び無効にした NAT に戻しましたが、新しい値は保持されていました。

localhost:<port>この変更だけで、VM を起動して、VM上のホスト マシンを で確認できるようになり ました10.0.2.2:<port>

于 2014-08-07T14:25:56.990 に答える
22

ローカル ホスト マシンの場合と同じ方法で、Windows 仮想マシンのホスト ファイルを編集する必要があります。

C:\WINDOWS\system32\drivers\etc\hosts

仮想ホストを 10.0.2.2 にリンクします。ローカルホストのみを使用している場合は、置き換えます

127.0.0.1 localhost と 10.0.2.2 localhost

例えば:

10.0.2.2 localhost
10.0.2.2 local.site1.com
10.0.2.2 local.site2.com

これにより、仮想マシンはそれらのドメイン名のローカル マシンを指すようになります。

于 2013-04-17T17:07:42.047 に答える
4

ネットワークの下のVirtualbox設定にポート転送を追加することで解決しました。ホスト IP セット 127.0.0.1 ポート : 8080 ゲスト IP : Web サイトの任意の IP を指定します (10.0.2.5 など) ポート : 8080 IE を使用してゲスト マシンからhttp://10.0.2.5:8080にアクセスします

于 2015-04-28T21:22:20.703 に答える
3

上記のように仮想ボックスでは、この行のホストファイルを追加できます

10.0.2.2   outer

ただし、VM に管理者権限がない場合は、hosts ファイルをデスクトップに移動し、編集して 10.0....outer という行を追加し、ファイルを保存して、元の場所に移動します。

于 2016-03-15T18:09:07.373 に答える
2

仮想ボックス内

  1. ネットワークを Bridge ネットワークに設定する
  2. 詳細設定の無差別モードに移動: すべて許可

ここで注意が必要なのはローカルホストです。Node.js から実行している場合は、IP アドレスを 0.0.0.0 に設定してから、独自の IP アドレスを検索します (例: cmd:ipconfig --> 10.0.1.3)。

そのアドレスをポート番号とともに入力します。そして、それはうまくいきます。

于 2016-05-09T11:42:25.000 に答える
2

親マシンを次のようにヒットできるかどうかを確認します: ipconfig (IPアドレスを取得します)

ping <ip>またtelnet <ip> <port>

ポートにアクセスできない場合は、ローカル ポートを許可する新しい受信規則を親ファイアウォールに追加してみてください。

その後アクセスできましたhttp://<ip>:<port>

于 2013-07-12T19:17:14.373 に答える
0

Virtual Box を使用している場合は、1 行のコードを使用して Mac OSX (および Linux だと思います) を仮想 Windows マシンに接続できます --> これをターミナルで実行する前に、ボックスを停止することをお勧めします。

VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on

これは私が実行しているDinghyのドキュメントからのものですが、これは仮想ボックスコマンドであるため、仮想ボックスである限り、実際に何を使用してもかまいません。

于 2016-11-30T18:36:24.283 に答える
0

奇妙なIPではなく、ローカルホストで実行する必要があります。

1) Mac 端末からiconfig -aローカル IP アドレスを検索します。たぶん最後です。

en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV> ether 38:c9:86:32:0e:69 inet6 fe80::ea:393e:a54f:635%en7 prefixlen 64 secured scopeid 0xe inet 10.1.5.60 netmask 0xfffffe00 broadcast 10.1.5.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex,flow-control>) status: active

例: 10.1.5.60

2) Windows イメージを起動します。start > 入力cmdして端末を取得します

3)notepad c:\windows\system32\drivers\etc\hosts

4) 次の行を追加します 10.1.5.60 localhost

5) IE を開くと、Mac で実行されているサーバーに次の URL がヒットするはずです。http://localhost:3000/

于 2018-10-15T15:29:49.650 に答える
-2

Apache を実行しているマシンの IP (inet addr: in ifconfig) を取得し、それを仮想ボックス ブラウザーのアドレス バーに入力します。

于 2013-10-09T14:10:16.710 に答える
-3

実際、user477494の答えは原則として正しいです。

他の環境 (OS X ホスト - 仮想 Windows XP) で同じロジックを適用したところ、うまくいきました。ホストのLAMPスタックを循環させて IP アドレスと Apache ポートを解決する必要がありましたが、それがわかったときは笑っていました。

于 2011-02-22T15:42:34.927 に答える