問題:
ADFS2では、RP 信頼で https を使用する必要があります。RP信頼はhttps://localhost:44310/PAWS/
. そうは言っても、IIS Express で SSL をローカルで使用する必要があります。そのため、 IIS Express を使用する
ようにASP.NET MVC4プロジェクトを構成すると、 .
これを TFS (ソース管理) にチェックインすると、チームの別の開発者が最新の状態になります。プロジェクトはそれらのために読み込まれません。
Visual Studio 2012 でソリューションを開くと、次のエラー メッセージが表示されます。
これは、IIS Express がプロジェクト ファイルを自動的に読み取らず、HTTPS バインディングをサイト構成に追加しないためです。これは、VS が IIS Express の applicationhost.config ファイルに追加する構成です。
<site name="PAWS.Web-Site" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\larsene\Documents\My Web Sites\PAWS.Web-Site14" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:44310:localhost" />
</bindings>
</site>
しかし、次のようにバインディング プロトコルを HTTPS に設定する必要があります。
<binding protocol="https" bindingInformation="*:44310:localhost" />
それを applicationhost.config に手動で入力することもできます。または、appcmd.exeをそのように実行して構成することもできます。
"%ProgramFiles(x86)%\IIS Express\appcmd.exe" set site /site.name:PAWS.Web-Site /bindings:https/*:44310:localhost
しかし、これら2つの方法のどちらも私が望むものではありません。このプロジェクトで作業するすべての開発者に、プロジェクトをロードする前に IIS Express の設定を手動で編集する必要があることを説明する必要はありません。
問題を再現する方法:
これは、最初に VS2012 を閉じることで簡単に再作成できます。次に、次の場所にある IIS Express の構成フォルダーを削除します。
%USERPROFILE%\Documents\IISExpress
次に、VS2012 を開き、https で IIS Express を使用するように構成された MVC4 プロジェクトへのソリューションも開きます。現在、VS2012 はプロジェクトの読み込みに失敗し、安全なバインドがないことを訴えます。
私のプロジェクトの最新情報を入手した人がプロジェクトを実行できるようにするには、何が間違っていますか、またはこれを修正するにはどうすればよいですか?