私はポート8000をリッスンしているローカルのテスト/開発サーバー(もちろんHTTP)を持っています。
私はLinuxに取り組んでいるので、Internet Explorer 6、7、8などでページをテストします。私はVirtualBoxを使用して仮想マシンを実行します。私はまた、FirefoxがWindows環境でどのように見えるかを見る必要があります(たとえばフォントは異なります)。
実際のマシンでは、URL http://localhost:8000
を使用してWebサイトを開きますが、仮想マシンからこのローカルホストをアドレス指定するにはどうすればよいですか。
今のところ私の回避策はIPアドレスを使うことです。もっと良いアイデアはありますか?
グーグルはこれを上げました: 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/
私はVirtual BoxをmacOS(以前のOS X)上で走らせています。Windows上でIEをテストするためにVirtual Boxを使っています。
Virtual BoxのIEに移動し、localhost
の場合はhttp://10.0.2.2
、http://10.0.2.2:3000
の場合はlocalhost:3000
を介してlocalhost
にアクセスします。
私は、ネットワーク設定をNATとして保持しました。私の場合は、上記のようにブリッジは必要ありません。設定ファイルを編集する必要はありません。
OSXでこれを可能にするために、私は以下をしなければなりませんでした:
VirtualBox Preferences -> Network -> Host-only Networks ->
に移動します。 OKをクリックしてください。"Settings" icon -> Network -> Adapter 2 ->
をクリックしてください。 "Attached to:"ドロップダウンで "Host-only Adapter"を選択すると、あなたのネットワーク(vboxnet0
)はデフォルトで下に表示されます。 OKをクリックしてください。http://10.0.2.2/
でlocalhostにアクセスできるはずです。次のようにlocalhost
で参照したり、他のローカルホストサイトにhostsファイル(C:\windows\system32\drivers\etc\hosts
)への参照を追加してアクセスすることができます。
10.0.2.2 localhost
10.0.2.2 subdomain.localhost
仮想マシンのネットワーク設定がNATに設定されている可能性があります。ネットワークをブリッジに設定した場合は、ホスト名でホストマシンにアクセスできるはずです。たとえば、ホスト名が「jsmith-Precision-7510」で、 http:// localhost:3000/ を開きたい場合は、 http:// jsmith-Precisionでそのページを表示できます。 -7510:3000/ 。
あなたのホスト名を見つけるには、端末/コンソールを開いてからコマンドhostname
を実行してください。あなたのホスト名は次の行に出力されます。
ネットワーク設定をブリッジに設定する方法については、 VirtualBoxのドキュメント を参照してください。
無作為検出モードが正しく設定されている場合のみ、10.0.2.2:<port>
が機能することがわかりました。私のVMをインストールした後、私はSettings> Network> Adapter 1に行きました。
NATはデフォルトで設定され、無差別モードドロップダウンは無効です。私はNATからBridged Adapterに切り替えました。これは無差別モードドロップダウンを有効にしてから、値を "Deny"から "Allow VMs"に変更しました。それから私は再びNATに切り替えました、それは再び無差別モードを無効にしましたが、新しい値を保持しました。
この変更だけで、VMを起動し、VM上のホストマシンlocalhost:<port>
を10.0.2.2:<port>
で見ることができました。
私はvirtualboxに入り、私のネットワーク設定を 'NAT'に変更しなければなりませんでした。その後、http://10.0.2.2:3000
を介してvirtualbox上の私のエミュレーターから私のホストマシン上で走っているlocalhost
を打つことができました。
_ nat _ にアダプタが接続されている場合、最近ではポート転送をローカルポートに設定することがより洗練された優れた解決策となります。
Settings
> Network
> Adapter
> Advanced
> Port forwarding
新しいルールを挿入して、Host port
とGuest port
を(httpの場合)80
または(sshの場合)22
に設定するだけです。
その後、http://localhost
と入力するだけでそのマシンにアクセスできます。
マックOS
Mac上でVirtualboxを使用してWindows環境を設定する場合は、アダプターのデフォルトのNAT設定を使用し、Windows VMでhostsファイルに移動して以下を追加します。
10.0.2.2 localhost
10.0.2.2 127.0.0.1
上記の答えとは異なり、両方の行を含めることが重要です。そうしないとうまくいきません。
ローカルのホストマシンと同じ方法で、Windows仮想マシンのhostsファイルを編集する必要があります。
C:\ WINDOWS\system32\drivers\etc\hosts
そして、あなたの仮想ホストを10.0.2.2にリンクしてください。もしあなたがlocalhostを使っているのなら、置き換え
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
これにより、仮想マシンは、これらのドメイン名に対してローカルマシンを指すようになります。
HostsファイルやVirtual Boxの設定を変更する必要はありません。設定をNATに保存します。 Windowsインスタンスに移動して「cmd」を実行するか、cmd.exeを開きます。コマンド "ipconfig"を実行し、 デフォルトゲートウェイ IPアドレスを取得します。 Windowsで http://10.0.2.2:8080 を参照IE表示されるのは、Mac Safariと同じです{ http:// localhost:8080 / または http://127.0.0.1:8080
いくつかのことを組み合わせることで、最終的に私の目的はうまくいきました。フラスコサーバーをmacosxで実行しています。
私のウィンドウVM私はhostsファイルを編集しました:
C:\windows\system32\drivers\etc\hosts
を開く10.0.2.2 outer
VirtualBoxでVMと私のMacをシャットダウンします。
VirtualBox > preferences > Network > Host-only Networks > +
にアクセスしてくださいvboxnet1
My_VM > settings > Network > Adapter 1
に行きます。Enable Network Adapter
を選択し、Attached to:
をBridged Adapter
に設定します。Advanced > Promiscuous Mode:
をAllow VMs
に設定します。OK
をクリックMy_VM > settings > Network > Adapter 1
に行きます。Attached to:
をNAT
に戻します。それから私はAdapter 2
に行きました
Attached to:
をHost-only Adapter
に設定し、以前に追加したネットワークvboxnet1
を選択します。私は127.0.0.1:5000
で実行している私のMacで私のサーバーを起動し、これは今http://10.0.2.2:5000
で私のvmでアクセス可能でした
マックでIEをテストするのは悪夢だ。もっと簡単な方法はありませんか。
ネットワーク下のVirtualbox設定にポート転送を追加することで解決しました。ホストIP設定127.0.0.1ポート:8080ゲストIPアドレス:WebサイトのIPアドレス(10.0.2.5など)を指定します。ポート番号:8080ゲストマシンからのアクセス http://10.0.2.5:8080 IEを使用
上で述べたように仮想Boxでは、この行hostsファイルを追加できます
10.0.2.2 outer
ただし、管理者がVMに直接アクセスできない場合は、hostsファイルをデスクトップに移動してから、編集して10.0 .... outerの行を追加し、ファイルを保存してに移動します。元の場所.
バーチャルボックス内
Node.jsからIPアドレスを0.0.0.0に設定して実行している場合は、ややこしい部分がローカルホストになります。次に、cmd:ipconfig - > 10.0.1.3などの独自のIPアドレスを検索します。
そのアドレスをポート番号と一緒に入力します。そしてそれはうまくいくでしょう。
ipconfig
(あなたのIPアドレスを取得します)であなたの親マシンにヒットできるかどうかチェックしてください
ping <ip>
またはtelnet <ip> <port>
ポートにアクセスできない場合は、ローカルポートを許可する新しいインバウンドルールを親ファイアウォールに追加してみてください。
私はhttp://<ip>:<port>
にアクセスすることができました
一般的な手順
ちょっと変わったIPではなく、localhostで実行する必要があります。
1)あなたのMac端末から、あなたのローカルIPアドレスを見つけるためにiconfig -a
を実行してください。それはおそらく最後のものです。
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イメージを起動します。端末を取得するにはcmd
と入力します。
3)notepad c:\windows\system32\drivers\etc\hosts
4)次の行を追加10.1.5.60 localhost
5)IEを開くと、次のURLがあなたのMac上で動いているサーバにぶつかるはずです:http://localhost:3000/
仮想Windows 7があるWindowsでは、私にとってうまくいった唯一のことは NATとport-forwarding を使うことでした(ブリッジ接続を実行することができませんでした)。私はここでチュートリアルを見つけました: http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/ (「仮想マシンへのポートの転送」の部分までスクロールします)。
この変更により、私の仮想マシンのInternet Explorer 10で、 " http://192.168.xx.x:8888/mywebsite "でxampp Webサイトにアクセスできました。
XAMPPコントロールパネル> Netstat( "System")でIPを見つけました。
Virtual Boxを使用する場合は、1行のコードでMac OSX(およびLinux)を仮想Windowsマシンに接続できます - >ターミナルで実行する前にボックスを停止することをお勧めします。
VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on
これは私が実行しているDinghyのドキュメントからのものであることに注意しますが、それは仮想ボックスコマンドなので、実際にはその仮想ボックスである限り使用するものを気にするべきではありません。