2012-02-15 8 views
0

問題として、ローカルIIS上でWebアプリケーションを実行する際に問題が発生します。 LinuxのUbuntuの上で動作するOracle VM VirtualBoxを超えるローカルIIS7サーバー上でWCF RESTサービスアプリケーションを実行する(デバッグする)方法

  • 窓:

    は、ここに私の状況です。

  • WindowsのボックスがルータからローカルIPを取得するようにブリッジアダプタ。
  • のVisual Studio 2010 + SP
  • WCF RESTサービスアプリケーションのプラグイン(ローカルホスト上)のVisual Studio開発サーバーを使用したときに、プロジェクトテンプレート
  • 用アプリケーションが実行されます。
  • ターゲットフレームワーク私は必要なものV4.0

である(ので、私はLAN内のリモートコンピュータ上でそれを消費することができます)アプリケーションがローカルホスト上の代わりに、IP上で動作するということですので、私はIIS7を構成しました。ここで

は、IISの設定です:私は、サイトへのパスが/ /のinetpubで80
  • ポートに私のローカルIPにサイトをバインドさ
  • ターゲットフレームワークV.4.0でウェブサイトを作成し
    • デフォルトのドキュメントとしてwwwroot iisstart.htm
    • IISは正常に実行されます。私が "http:// my_local_ip"を開くと、私はウェルカムロゴを取得します。

    問題はVisual Studioにあります。

    私はプロジェクトプロパティ "Web"セクションに行き、vsdサーバー上のローカルIISを選択すると、私は迷うことになります。 "Project URL"を "http:// my_local_ip/some_name"に設定した場合、Visual StudioはIISサーバーを見つけることができないため、仮想ディレクトリを作成できないという不満があります。私は手動でIISマネージャーに仮想ディレクトリを追加しようとしましたが効果はありません。 "http:// localhost/some_name"を "Project URL"として使用すると、仮想ディレクトリが作成されますが、それは意味がありませんか?

    私に教えてもらえますか?

  • 答えて

    2
    If I use "http://localhost/some_name" as the "Project URL" the virtual directory gets created, 
    but it makes no sense does it? 
    

    ここではさまざまなものに混じっていると思います。 VSでプロジェクトのIISサーバーとしてlocalhostを使用するように要求すると、ローカルIISに接続して構成タスクを実行します。 VS tuに "my_local_ip"を使用するように指示すると、IISサーバーがリモートであることをVSに伝えているので、VSはリモート管理を使用してIISを構成します(VSはmy_local_ipがローカルコンピュータであることを知ることができません)。

    ただし、リモートのIIS管理者は、既定のWinServerボックスでは有効になっていません。さらに、追加のネットワーク設定が必要になります。したがって、ローカルサーバーを使用するようにvsに指示する必要があります。

    実際、IISサイトバインディングとVS展開パラメータは、全く異なるものです。したがって、http://localhost/your_siteにあなたのサイトを展開してください。

    しかし、実際のアプリを展開するためにVSデバッグデプロイメントを使用するというのは本当に好きではありません。ディレクトリにはすべてのプロジェクトファイルが含まれます...あなたは:

    1. あなたのサイトをIISマネージャー上に作成し、仮想ディレクトリを設定する必要があります。
    2. どちらか
      • はVS TUは、パッケージをインポートするには、IISマネージャを聞いて、VS TUはWebDeployパッケージを公開尋ねるディレクトリ(仮想ディレクトリ)
      • にサイトを公開尋ねます。
    +0

    説明してくれてありがとうEilistraee。しかし、私はあなたの提案を理解していません(私はISSで新しいです)。エイリアス "service"を持つISSマネージャーのWebページに仮想ディレクトリを作成し、物理パスを/ inetpub/wwwroot/serviceに設定しました。私が理解すれば、VSは私がアプリケーションをビルド/実行すると、このディレクトリにファイルをコピーする必要がありますか? VSでは、ローカルIISと「プロジェクトURL」を「http:// localhost/service」として選択しました。 VSは何とか仮想ディレクトリが既に作成されていることを知らず、作成しようとして失敗します...申し訳ありませんが、私はこれまでにこれをやったことはありません! – no9

    +0

    私は何とか仮想ディレクトリを作成して、VSに満足しています。仮想ディレクトリの詳細は次のとおりです。フォルダ/ inetpub/wwwroot/serviceを作成し、このフォルダを仮想ディレクトリの物理パスとして設定しました。別名はサービスです。これをVSで使用するとエラーは発生しません。しかし、私はアプリVSを実行すると、エラーをスロー:Webサーバー上でデバッグを開始することができません。 Webサーバーが要求されたリソースを見つけることができませんでした。私は何が欠けていますか? – no9

    +0

    ok少し早く進捗しました。私はIIS上でアプリケーションを公開することができました。仮想ディレクトリに私は今binフォルダ、global.asaxとweb.configを持っています。私が今必要とするのは、IISがアプリケーションを実行しない理由を理解することだけです。現在のところ、私はデフォルトのドキュメントを設定したり、ディレクトリブラウジングを有効にすることを要求していますが、それは私の目標ではありません。 – no9

    関連する問題