私の ASP.NET Web アプリは IIS 7.5 で正常に動作します。しかし、Web ファームで実行する準備が整っていることを確認したいと考えています。そこで、開発マシンで Web ガーデンを有効にしました。(アプリケーション プールで最大ワーカー プロセス数を 2 に設定します。)
サイト内をクリックしても問題ないように見えますが、AJAX リクエストで 500.19 エラーが発生します。エラーは次のようになります。
ページの関連構成データが無効であるため、要求されたページにアクセスできません。
それぞれ「404、-1」に設定されたキー属性「statusCode、subStatusCode」を組み合わせて、タイプ「エラー」の重複するコレクション エントリを追加することはできません
私のWeb構成では、これがあります:
<system.webServer>
<httpErrors>
<error statusCode="404" path="Home/NotFound" />
</httpErrors>
私には問題ないようで、必要だと思います。しかし、楽しみのために httpErrors セクションを削除しました。それから私は得る:
リモートサーバーに接続できません
もちろん、MS のトラブルシューティング 500.19 エラーを見ました。しかし、エラーは赤いニシンだと思います。この問題は、アプリ プールやコード、またはメッセージが伝えていること以外の何かに関係しています。前述したように、1 つの Max Worker Process ですべてが美しく動作します。
何か案は?
更新: 言及した 2 番目のエラー「リモート サーバーに接続できません」は、アプリケーションが原因で発生した実際のエラーであることに気付きました。したがって、web.config の <error> 要素が 500.19 エラーの原因でした (実際のエラーを隠していました)。system.web に同様の要素があり、それ自体で目的の効果があるように見えるため、この要素は必要ないかもしれません。
問題が解決しました。しかし、なぜシングルワーカーモードでは問題なく、Web ガーデンモードで壊れてしまうのでしょうか?