4

空の MVC 3 Web アプリケーションから始めました。ローカル IIS に localhost:80 用の新しい Web サイトを作成し、VS 開発 Web サーバーの代わりにその Web サーバーを使用するように新しい MVC 3 プロジェクトを構成しました。この時点で、プロジェクトを通常どおり実行およびデバッグできます。しかし、これを web.config に追加すると、「Web サーバーでデバッグを開始できません」というエラーが表示されます。[デバッグなしで開始] を選択すると、正常に動作します。どうしたんだ?

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
    <httpErrors errorMode="Custom" existingResponse="Replace">
        <remove statusCode="401"/>
        <error statusCode="401" responseMode="ExecuteURL" path="/Error401" />
    </httpErrors>
</system.webServer>
4

2 に答える 2

0

ここでもう少し希望を与えることができればいいのですが、インターネットで広範囲に調査した結果、解決策はないようです. この構成ノードを有効にすると、デバッグ以外に明らかなエラーがなくても、デバッグは開始されません。

以前、証明書の問題が原因で同様のエラーが発生する可能性があることに気付きました。どうやら、デバッガーは予期したものを認識しておらず、結果として失敗しています。

私の解決策は、このディレクティブをテスト環境以上でのみ有効にし、開発のために無効のままにすることです。

于 2013-11-26T20:08:06.033 に答える
0

httpErrors are the new element which is only used by IIS7. This seems a little weird, however try adding the following in web config under system.web section:

<customErrors mode="RemoteOnly"  defaultRedirect="~/error">
    <error statusCode="401" redirect="~/Error401" />
</customErrors>
于 2011-11-25T19:13:37.857 に答える