回答:
モジュールの前提条件:
IISコアエンジンは、前提条件を使用して、特定のモジュールを有効にするタイミングを決定します。たとえば、パフォーマンス上の理由から、マネージハンドラーにも送信される要求に対してのみマネージモジュールを実行したい場合があります。次の例の前提条件(
precondition="managedHandler"
)は、.aspxファイルや.asmxファイルへのリクエストなど、マネージハンドラーによっても処理されるリクエストのフォーム認証モジュールのみを有効にします。<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" />
属性を削除すると
precondition="managedHandler"
、フォーム認証は、.html、.jpg、.docなどのマネージハンドラーによって提供されないコンテンツに適用されますが、従来のASP(.asp)またはPHP(.php)拡張にも適用されます。IIS統合パイプラインを活用する方法を参照してください。すべてのコンテンツに対してASP.NETモジュールを実行できるようにする例については、「を利用する。ショートカットを使用して、「
managedHandler
」の前提条件に関係なく、すべてのマネージド(ASP.NET)モジュールがアプリケーションのすべてのリクエストに対して実行されるようにすることもできます。すべてのマネージモジュールをすべての要求に対して実行できるようにするには、各モジュールエントリを構成して "
managedHandler
"前提条件を削除しないようにするにはrunAllManagedModulesForAllRequests
、<modules>
セクションのプロパティを使用します。<modules runAllManagedModulesForAllRequests="true" />
このプロパティを使用する場合、 "
managedHandler
"前提条件は効果がなく、すべてのマネージモジュールがすべての要求に対して実行されます。
IISモジュールの概要からコピー:前提条件
<modules runAllManagedModulesForAllRequests="true">
。追加するソリューションがありました。しかし、今ではオーバーヘッドが生じる可能性があることがわかりました。それで、ドット「。」を取得できるようにすることができる特定のモジュールがありますか?MVC WebAPIのURLで、ちょうどすべてでそれらを有効にする代わりに<modules runAllManagedModulesForAllRequests="true">
?たとえば「UrlAuthorization」モジュールですか?
以下のコードをweb.configに追加します
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>