ネットワーク上の別のPCからASP.NET開発サーバーにアクセスする
-
20-09-2019 - |
質問
他のブラウザでWebアプリをテストしたいと思います。それを行うために仮想PCをインストールしました。 ASP.NET開発サーバーはリモート接続を許可しないため、仮想PC(ネットワーク上の別のコンピューター)がWebサイトにアクセスできません。
私は見つけました これ 開始されましたが、解決策はありませんでした。
LocalHostの使用が機能しないことを理解しています。マシンIPの使用について聞いたことがありますが、どうすればその正しいIPを取得できますか?私のlynksysルーター管理者を見てください?
私が自分のIPを取得することから得た場合、ASP.NET DEVサーバーがリモート接続を許可していないことを確認してください。どうすればそうすることができますか?
解決
私はここであなたのセットアップについていくつかの推測をしているので、
仮想マシンがXP Professional、Vista Business、Windows 7 Professional以上である場合、開発マシンでIISをローカルに実行し、仮想マシンの名前を介して同じネットワーク上にある別のマシンからWebサーバーにアクセスできるはずです。
同様に、実際のマシンで開発を行っていて、さまざまな仮想マシンを使用してWebアプリケーションにアクセスしたい場合は、IISがインストールされていることを確認し、IISで新しいWebサイトを作成してください。仮想マシンからのマシン名を介したWebアプリケーション。
いずれにせよ、Visual StudioからビルトインWebサーバーを使用しようとしないでください。サイトをIISに公開して、そのように作業してください。
幸運を祈ります。
他のヒント
答えは次のとおりです。 番号(*)。 Windows Firewall TCPポートを開いても、あるマシンのASP.NET開発サーバーに別のマシンからアクセスすることはできません。
MSDNの記事から 「Visual Web開発者のWebサーバー":
ローカルホストシナリオ(Webサーバーと同じコンピューターからのブラウジング)の下で、ASP.NET Webページを提供または実行するように特別に構築されています。
つまり、ASP.NET開発サーバーは、ローカルコンピューターでのブラウザリクエストにページを提供します。別のコンピューターにページを提供しません。さらに、アプリケーションの範囲外のファイルは提供されません。
(*)ローカルにインストールされているIISからサイトを実行する必要があります...または、このブログ投稿に記載されているフリーウェアを使用して素敵なハックを実行する必要があります。
iPhone Visual Studio ASP.NET開発サーバーへのアクセス
使用する SPIポートフォワード デバイス接続を受け入れるには、次のことを行います。
デバイスが接続するポート番号に「ローカルポート」を設定し、通常は習慣から8080を使用します
「リモートホスト」をLocalHostに設定します
asp.net devサーバーポートに「リモートポート」を設定します
アクティブ化]ボタンをクリックして、接続の受け入れを開始します
(注:管理者の権利でプログラムを開始したことを確認してください)
rinetdを使用してポートフォードをセットアップします
ここにディアチル: http://blog.waynehartman.com/articles/218.aspx
IIS(またはトンネル)を使用したくない場合の別の答え: https://stackoverflow.com/a/12008223/1552178
Fiddlerまたは同様のホストで使用する - クライアントVMでブラウザを設定してプロキシを使用し、Clientでlocalhost:dev_portを使用してクライアントで使用します。
クライアントからのすべてのリクエストは、開発者マシンでローカルホストにルーティングするDEVマシンのプロキシをGOTOとし、ASP.NET DEVサーバーはリクエストがDEVマシンからのものであると考えています。
私は人々がそれを機能させるのを助けるためにこの古い質問に答えています IISなし.
1.最初のステップ
ダウンロードする必要があります フィドラー.
Fiddlerがダウンロードされてインストールされたら、開いてください。
入る ツール - > fiddlerオプション - > [接続]タブ - > [リモートコンピューターが接続できるようにする]を確認します :
フィドラーを再起動します。
2.セカンドステップ
この後、in ネットワーク上の他のPCまたはVM, インターネットエクスプローラーを開く - >インターネットオプション - >接続タブ - > LAN設定 - >「LANにプロキシサーバーを使用」 :
- アドレスは、開発マシンのIPアドレスです。
- ポート8888を入れます
これで、ネットワーク上の別のPCからASP.NET Webサーバーにアクセスできます(ファイアウォール、無制限のポートなど、より多くの構成がありますが、これは良いスタートです)!
アクセスする - > http://localhost.:54814
- 「LocalHost」の後の追加ポイントを忘れないでください! (ローカルローカルホストを上書きします)
- 私の場合のポート「54814」は、ASP.NET Webサーバーポートです。
ノート :
- プロキシが機能するかどうかをテストするには、これを試すことができます。 http://localhost.:8888
- いくつかの構成を指摘するのを忘れたかもしれませんが、それは常にネットワークインフラストラクチャに依存します。
Linuxの作業ソリューション
これは、VMまたは別のホストのWindowsでASP.NET DEVサーバーを実行し、Linuxからアクセスする場合に機能するはずです
Windowsマシンで
何らかの理由で、ASP.NET DEVサーバーポートに直接接続することはできません。最初にローカルでプロキシを作成する必要があります。
使用する SPIポートフォワード デバイス接続を受け入れるには、次のことを行います。
「ローカルポート」をポート番号に設定します。8089セット「リモートホスト」などのデバイスが接続されます。
asp.net devサーバーポートに「リモートポート」を設定します
アクティブ化]ボタンをクリックして、接続の受け入れを開始します
(注:管理者の権利でプログラムを開始したことを確認してください)
Linuxマシンで
ローカルにローカルホストポート8089をWindowsIPに転送します(置き換えます GUEST_IP_HERE
正しいIPで):
iptables -t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 8089 -j DNAT --to-destination GUEST_IP_HERE:8089
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL --dst-type UNICAST -j MASQUERADE
DevサーバーはリクエストのLocalHostを特別に探し、応答しないため、これが必要です http://GUEST_IP_HERE:8089
ホストから
コマンドプロンプトと入力を開きます。 「IPConfig」これにより、マシンIPアドレスが提供されます。
ファイアウォールを無効にした場合(少なくともASP.NET DEVポート用)、仮想PCのブラウザに入力できるはずです http://192.168.1.3:3243/default.aspx