1

私は2つのプロジェクトを持つソリューションを持っています:-Project1はasp.net mvc 4プロジェクトです-Project2はasp.net webapiプロジェクトです

両方を同じ webrole に配置したいのですが、本番環境では次のことができるようです:

  • mydomain.com に送信されるすべてのリクエストは MVC プロジェクトに送信されます
  • api.mydomain.com に送信されるすべてのリクエストは、webapi プロジェクトに送信されます。

ステージングでは、ベース URL は ec3abfacbfb27a1800f6bc0f2b168121.cloudapp.net のようなものですが、これを行う方法はありますか:

  • ec3abfacbfb27a1800f6bc0f2b168121.cloudapp.net に送られるすべてのリクエストは MVC プロジェクトに送られます
  • すべてのリクエストは api.ec3abfacbfb27a1800f6bc0f2b168121.cloudapp.net に送られ、webapi プロジェクトに送られます

前もって感謝します

4

2 に答える 2

2

いいえ。特定のシナリオ (およびその他の多くのシナリオ) では、ステージング環境をまったく使用しないことをお勧めします。代わりに別の実稼働環境を使用してください。[myapp-stating].cloudapp.netそして、たとえば名前を付けます。

独自のカスタム ドメインを使用してマッピングを作成するよりも (たとえばmyapp.com):

  • staging.web.myapp.com-> CNAME ->myapp-staging.cloudapp.net
  • staging.api.myapp.com-> CNAME ->myapp-staging.cloudapp.net
于 2013-04-04T13:18:22.943 に答える
0

まず、Web アプリ内でルーティングを設定します (まだ設定していない場合)。ホスト名のプレフィックスを探す必要がありますapiが、それ以外は URL とは無関係です。

次に、ブラウザを使用して手動でテストするために、ステージング サーバーの IP アドレスを使用して%SystemRoot%\System32\drivers\etc\hostsの行を編集および追加します。api.abcdefghijklmnopqrstuvwxyz.cloudapp.net

自動テストの場合、テスト クライアントを通常のホスト名 (api接頭辞なし) を使用してステージング サーバーに接続しますが、必要に応じHostて接頭辞を含めるようにヘッダーを設定apiします。

于 2013-11-14T05:48:30.557 に答える