web-dev-qa-db-ja.com

VirtualPCのポートを使用してローカルホストにアクセスする方法

Windows7を搭載したVirtualPCをインストールし、マシンのローカルホストへの接続を開きました。

私のコンピューターの名前はメンフィスです。hostsファイルに次の行を追加しました。

127.0.0.1 memphis

また、[〜#〜] iis [〜#〜]デフォルトのWebサイトバインディングを更新して、以下を含めました。

memphis, 80, All unassigned

ここで、仮想マシンIE9で次のように入力しました。

http://memphis/

これはうまく機能し、ディレクトリコンテンツを表示しました...次に、IISの下に新しいWebサイトを追加し、そのバインディングをに変更しました。

localhost 900, and memphis 900

私のマシンではうまく機能しますが、VritualPCではIEと入力しました:

http://memphis:900/

そして、ページを表示できません...何が起こっているのですか? Virtual PCの別のポートにアクセスできないのはなぜですか?

3
Ayyash

Virtual PCインスタンスをインストールすると、まったく新しいコンピューターのようになります。localhostは、ホスト(物理コンピューター)とゲスト(仮想PC)のどちらで解決するかに応じて、2つの異なるマシンを参照します。インスタンス)。

コンピューター名をホストに知らせるために、hostsファイルに何も入力する必要はありません。ホストは自分の名前を知っています。

ホストの名前をゲストのhostsファイルに入れることができますが、ホストが同じネットワークを共有している限り、これは必須ではありません(Windowsのピアツーピア名のため)解決)、しかしそれも傷つけるべきではありません。

HTTPD(IIS)が使用するポートは常に80です。ホストにアクセスするには、そのネットワークIPアドレス(192.168.1.10not127.0.0.1など)を使用する必要があります。

非標準のHTTPポート(900など)を使用する場合は、ゲストが接続できるように、Windowsファイアウォールでそのポートを手動で開く必要がある可能性があります。

プロセスの概要は この回答 ですが、ここではあなたのケースに合わせて調整されています:

  1. コントロールパネルに移動し、 Windowsファイアウォールを起動します。

  2. 詳細設定に移動します

  3. 左側のペインでインバウンドルールを選択します

  4. 右ペインで新しいルールを選択します

  5. 新規インバウンドルールウィザードで、ルールタイプとしてポートを選択し、次へをクリックします。

  6. [〜#〜] tcp [〜#〜] を選択し、 900 (および開きたいその他のポート)を特定のローカルポート次へをクリックします

  7. 接続を許可するを選択し、次へをクリックします

  8. ルールを適用するネットワークの場所を選択し(不明な場合はすべて選択してください)、次へをクリックします。

  9. 名前とオプションの説明を入力します

3
Der Hochstapler