Vista x64でHTTPエラー500でCruiseControl.netが失敗する
-
05-07-2019 - |
質問
Vista x64開発マシンにCruiseControl.net(CruiseControl.NET-1.4-Setup.exeインストーラーから)をインストールしました。サーバー部分は正常に動作しています。ただし、webdashboardの一部は機能していません。
http:// localhost / ccnet をプルアップしようとしたときに見た最初のエラーメッセージ統合パイプラインモードで実行できます。簡単に修正。 IIS7管理パネルを開き、ccnetアプリケーションを変更して" Classic .NET App Pool"を使用しました。アプリケーションプール。
ただし、接続しようとすると、HTTPエラー500が永続的に表示されるようになりました。多分それがファイルのアクセス許可の問題であると期待して、webdashboardフォルダーにNTFSアクセス許可を設定しました。喜びはありません。
少し掘り下げて試行錯誤した結果、問題を解決するように思われる一連の手順が見つかりました。私はこの直後にフォローアップの回答を投稿しますが、それが他の誰かを助けるかもしれないという希望でstackoverflowでこれを共有したかったです。また、より良い構成ソリューションがあれば、私はすべて耳にします:)
解決
取得したHTTP 500エラーダンプのトップは次のとおりです。
HTTPエラー500.0-内部サーバーエラー
説明:内部サーバーエラーが発生したため、ページを表示できません。
エラーコード:0x800700c1
通知:ExecuteRequestHandler
モジュール:IsapiModule
リクエストされたURL: http://localhost/ccnet/default.aspx
物理パス:C:\ Program Files(x86)\ CruiseControl.NET \ webdashboard \ default.aspx
ログオンユーザー:匿名
ログオン方法:匿名
ハンドラー:AboMapperCustom-80778
最も可能性の高い原因:
IISはリクエストを受信しました。ただし、要求の処理中に内部エラーが発生しました。このエラーの根本的な原因は、要求を処理するモジュールと、このエラーが発生したときにワーカープロセスで何が起こっていたかによって異なります。 IISは、Webサイトまたはアプリケーションのweb.configファイルにアクセスできませんでした。これは、NTFSアクセス許可が正しく設定されていない場合に発生する可能性があります。 IISは、Webサイトまたはアプリケーションの構成を処理できませんでした。 認証されたユーザーには、このDLLを使用する権限がありません。 要求はマネージハンドラーにマップされますが、.NET拡張機能はインストールされません。
これを修正するための鍵はハンドラー行でした。何らかの理由で、ccnet Webアプリケーションは、*。aspxの制御を巡って争う2つのハンドラーで構成されました。 Thoughtworksの実際のハンドラーはweb.configファイルで設定されます。ただし、ccnetアプリのIIS7コントロールパネルの[ハンドラーマッピング]セクションを開くと、AboMapperCustom-80778という別のハンドラーが既に作成され、*。aspxを探すように設定されていることがわかりました。
ハンドラーを右クリックして[削除]を選択しました。その後、ccnetアプリは正常に動作し始めました。
他のヒント
この投稿は、IISおよび64ビットOSで多くの問題が発生する可能性があることを示しているようです。解決方法については、リンクをご覧ください: http:// blog .danbartels.com / archive / 2005/05/18 / 662.aspx