問題タブ [integrated-pipeline-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - クラシック パイプライン モードでサイトが既定のドキュメントにリダイレクトされない
IIS 7.5 に .NET 4.0 サイトがあります。既定のドキュメントは、home.aspx に設定されています。
アプリケーション プールのマネージド パイプライン モードが「クラシック」に設定されている場合、 http://localhost/mysiteに次のエラーが表示されます。
http://localhost/mysite/home.aspxにアクセスすると、サイトが正しく表示されます。
管理パイプラインとして「統合」を使用すると、サイトはどちらのパスを使用しても正しく表示されます。
以前のバージョンの IIS に対して EnableExtensionlessUrls の修正を試み、また既定のドキュメント情報を web.config に直接配置しようとしました。これらはどちらも、「クラシック」パイプライン モードでは機能しませんでした。
なぜこれが起こっているのですか?
memory - IIS7 上のクラシック ASP ==> アプリケーション プール管理パイプライン モードは「統合」または「クラシック」ですか?
IIS7 では、アプリケーション プールのマネージ パイプライン モード設定は、従来の ASP Web アプリケーションのメモリ消費動作に影響しますか?
asp.net - 統合された IIS 7 のカスタム HttpModule
作成したカスタム エラー ハンドラに問題があります。である必要がありますが、のタグHttpModule
に追加すると開始されません。web.config
system.webServer/modules
これは私のweb.config
セクションです:
これは私のコードですHttpModule
:
誰かが私が間違っていることと、IIS 7 統合マネージド パイプライン モードがどのように機能するかを説明してもらえますか? 私が見つけた答えのほとんどは、HttpModules
IIS 6 の構成に関するものだったからです。
asp.net-mvc-3 - httpmodule-IIS7で静的ファイルとasp.netページを区別する
IIS7統合モード、特にASP.NET MVCおよび.NET4では、すべてのモジュールがすべての要求に対して実行されます。runAllManagedModulesForAllRequests="true"。runAllManagedModulesForAllRequests = "false"を作成すると、混乱するまで、頭がおかしくなり、これに関する問題が多すぎます。
簡単にするために、静的ファイルを含むすべてのリクエストをモジュールに受け入れさせますが、BeginRequestのようなモジュールでは、静的ファイルでない場合にのみ処理します。モジュールでこの状態をフィルタリングまたはチェックするにはどうすればよいですか?
asp.net - Response.Headers と IIS6
そのため、カスタム キャッシュ ジョブの Response.Headers を繰り返し処理しようとしていますが、何かに触れると次のエラーが発生します。
IIS6でこれを行うことは可能ですか? 回避策はありますか?
asp.net-mvc - 認証プロセス中に失われたフォームデータ-ただし、統合パイプラインモードでのみ
現在IIS7でクラシックモードで実行されているASP.NETMVCアプリケーション(バージョン1)を維持しています。代わりに、統合パイプラインモードでアプリの実行を開始したいと思います。ただし、統合モードに切り替えることができないという奇妙な問題が発生しています。試行すると、アプリケーションはフォームデータの受信を停止します。(つまり、データはPOSTメソッドを介して送信されます。)
Global.aspxファイルに大量のログを追加することで、フォームデータが失われる場所を絞り込むことができました。これが起こっているようです。
リクエストを受信すると、
Application_BeginRequest
イベントが発生します。この時点で、フォームデータが存在し、リクエストオブジェクトForms
またはParams
プロパティを調べることで確認できます。Url
この時点でのリクエストのプロパティには、「。mvc」拡張子がどこにもありません。(これについては以下で詳しく説明します。)次に、
Application_AuthenticateRequest
イベントが発生します。この場合も、フォームデータが存在し、URLには「.mvc」拡張子がありません。この時点で、私が期待するのは、
Application_PostAuthenticateRequest
イベントが発生することです。しかし、実際に起こることは、それApplication_BeginRequest
が再び呼び出されることです。今回は、フォームデータがなくなりました。、、、またはその他のForms
場所にはParams
ありません。さらに、URLが変更され、URLのコントローラー名の部分に「.mvc」拡張子が付加されるようになりました。たとえば、手順1と2のURLが「/ Education / Manage」の場合、手順3では「/Education.mvc/Manage」と表示されます。Application_AuthenticateRequest
イベントが再度発生します。この場合も、フォームデータが欠落しており、URLには「.mvc」拡張子が埋め込まれています。今回
Application_PostAuthenticateRequest
はが起動され、ページの残りのライフサイクルは正常に進行します。これ以降のすべてのイベントでは、フォームデータはなく、「。mvc」拡張子は引き続き存在します。
この問題は、統合パイプラインモードに切り替えた場合にのみ発生します。クラシックモードでは正常に動作します。私は何日もグーグルをしてきましたが、残念ながら、同様の問題への言及を見つけることができませんでした。私はまた、運がなくても問題を解決することを期待して、いくつかの異なる方法でWeb.configファイルを編集しようとしました。ここの誰かがこの問題に光を当てることができることを願っています。
関連するコードスニペットをいくつか示します。他に含める必要のあるコードがある場合は、お知らせください。
Web.configから:
Global.aspxから:
.net - MVC アプリを iis 統合モードで実行するように構成するにはどうすればよいですか?
Visual Studio 開発サーバーが MVC アプリを統合パイプライン モードで実行するように構成するにはどうすればよいですか?
asp.net - URL 書き換えモジュールが IIS 7.5 のクラシック パイプラインで機能しない
統合マネージド パイプライン アプリ プールで完全に動作するカスタム URL 書き換え http モジュールを作成しました。
しかし、クラシックに切り替えると、動作しなくなります。
「ページ」は、「RelativeUrl」と「AliasAddress」プロパティを持つデータベース エンティティであることを説明する必要があります。何が問題なのですか?
asp.net - ActionResult 内で要求を IIS に戻す
答えは「あなたにはできない」だと確信していますが、もしそうなら、ASP.NET MVC には恐ろしい欠陥があります。
静的ファイルを提供する必要がある ActionResult があります (ファイル名はコードで決定されます)。パフォーマンス上の理由から (そして、受け入れバイトとキャッシュ ヘッダーの HTTP 仕様を再実装する気がしないため)、要求を IIS に渡したいと思います。HttpModule の context.RewritePath() が静的ファイルの名前を指定した場合と同様です。
ただし、これは PostAuthorizeRequest ではなく、ActionResult 内で発生する必要があります。
FileStreamResult クラスと FilePathResult クラスを見ると、それらが HTTP 200 のみを実装していることは明らかです。 .
IIS がファイルを提供する上でどれほど優れているか、統合パイプラインがどれほど重要であるか、IIS6 でのワイルドカード マッピングがパフォーマンスにとっていかに悪かったかなど、ほぼ解読されていると言われました。
今は同じ船に戻っています。IIS に ActionResult から静的ファイルを提供させる方法はありません。(いいえ、TransmitFile はカウントされません)。
MSが静的コンテンツを別のサーバーに置くことを推奨しているのを見始めました。
私が間違っていることを教えてください。これを行う魔法の方法がどこかにあるのです。それとも、MVC によって Integrated Pipe Dream が殺されましたか?
c# - IIS 7 統合パイプライン - 応答 HTML の変更
要求がクライアントに送り返されるときに、要求の応答 HTML を変更する IIS 拡張機能を作成しようとしています。従来、これは ISAPI フィルタの作業であることはわかっていましたが、私は .Net 開発者であり、.Net で ISAPI フィルタを実装することは悪い考えであると読んだことがあります。
IIS 7 の光沢のある新しい統合パイプライン モードにより、 IHttpModuleを実装することで ISAPI フィルターと同じ機能を提供するモジュールを .Net で記述できるようになるはずであるといくつかの場所で読みましたが、変更方法がわかりません。非 ASP.Net 要求の応答 HTML。
これを行う方法について見つけた唯一のリソースはこの記事HttpApplication.CompleteRequest
ですが、統合パイプラインモードが有効になっていても、非 ASP.Net リソースまたは が呼び出された場合には機能しないようです。
すべてのリクエストのレスポンス html / データを変更できる IIS モジュールを C# で作成するにはどうすればよいですか?