1

非常に単純な ASP.NET MVC サイト アプリケーションがあります。(MVC1.0)

コントローラーで [Authoize] 属性を使用しているため、web.config に承認セクションがありません。

サーバーのデフォルトの web.config では、* 予想どおり、フォーム認証が許可されます。

既存の Windows 2008 専用 (ホスト) サーバーが 2 台あります。サイトはうまく機能します。

私は新しい専用サーバーを持っていますが、サイトが機能しないことを除けば同じようです。すべてのリソース、さらには画像/javascript がログイン ページにリダイレクトされます。

* と場所のルールを許可する明示的な承認ルールを追加しようとしましたが、同じ結果になりました。.NET の信頼レベル、Internal/Full Trust を確認しました。すべてが 2 台のサーバーで完全に実行されますが、この 1 台だけが承認に関するすべてのルールを無視しています。

何か案は?ありがとう

4

1 に答える 1

0

問題が見つかりました:) Windows 2008で何かが変更されていない限り、これはエラーとして表示されると予想していましたが、上記のように、フォーム認証によって隠されていました。

問題は、ホスティング会社がウェブサイト/ストレージのすべてのサーバーにデータ ドライブを追加するようになったことです。IIS がファイルを読み取れるようにするためのアクセス許可が設定されていませんでした。見つからなかった理由は、アプリケーション プール ユーザーのアクセス許可を既に追加していたためです。私の場合は、ASPNET、ネットワーク サービス、IIS アノン ユーザーなどを完全なアクセス許可に追加しました。

Everyone に少なくとも Web サイト フォルダーへの読み取りを許可する必要があり、IIS はセキュリティで保護されていないコンテンツを表示しました。私はまだauthを形成するのは奇妙だと思います。とにかく、すべての web.config ルールを開始して無視していました。

IIS 7 マネージャーで Forms Auth サポートをオフにすると、エラーが見つかりました。次に、ファイルのアクセス許可が原因でプロセス失敗エラーが発生しました。

于 2009-04-24T14:01:46.513 に答える