IISで実行されているアプリケーションをデバッグする方法は?
アプリのアプリケーションプールをPIDと一致させるために、コマンドプロンプトでIISAPPを実行することにより、正しいW3WP.EXEプロセスを特定します。 2。ビジュアルスタジオで、デバッガを特定したW3WP.EXEプロセスに添付し、適切なデバッガータイプ(管理またはCORECLR)を選択します。 3. .NETフレームワークのweb.configでdebug = "true"を確認するか、.netコアの開発にaspnetcore_environmentを設定します。 4.デバッグが失敗した場合は、追加の診断にWindowsイベントビューアー、IISログ、またはアプリケーションログを使用します。
IISで実行されているアプリケーションをデバッグするには、開発ツールをアプリケーションをホストするワーカープロセスに接続する必要があります。最も一般的で効果的な方法は、Visual Studioを使用してW3WP.Exeプロセスに接続することです。段階的にそれを行う方法は次のとおりです。
1.正しいw3wp.exeプロセスを特定します
IISは、 w3wp.exeという名前のワーカープロセスでアプリケーションをホストしています。複数のアプリケーションプールがある場合、いくつかのインスタンスが実行されている可能性があります。アプリに結び付けられたものを見つける必要があります。
それを特定するには:
- 管理者としてコマンドプロンプトを開きます
- 実行: iisapp (または%SystemRoot%\ System32 \ inetsrv \ appcmdリストwp )
- これは、PIDと関連するアプリケーションプール名を使用して、すべての実行中のワーカープロセスをリストします
- アプリのアプリケーションプールを正しいPIDに一致させます
2。ビジュアルスタジオデバッガーを添付します
PIDができたら:
- Visual Studioで、デバッグに移動→プロセス(またはctrl alt p)に接続します
- 正しいPIDでW3WP.EXEプロセスを見つけます
- それを選択し、 [添付]をクリックします
- アプリタイプ(.NETフレームワークvs .NET CORE/.NET 5)に応じて、デバッガータイプが管理(CORECLR)または自動に設定されていることを確認してください。
これで、ブラウザまたはAPI呼び出しを介してアプリにアクセスすると、ブレークポイントがヒットするようになりました。
3. web.configでデバッグモードを有効にします
アプリケーションがデバッグモードでコンパイルされていることを確認してください。
- web.configで、確認:
- .NETコアアプリの場合、環境が開発に設定されていることを確認してください( web.configまたは環境変数を介して)
これにより、シンボルがロードされ、デバッグが適切に機能します。
4.ロギングとイベントビューアを使用します
デバッガーが添付されていない場合、またはより多くのコンテキストが必要な場合:
- Windowsイベントビューアー→[Windowsログ]→[アプリケーション]を確認してください
- ロギングを追加します( nlog 、 log4net 、またはiloggerを.netコアで使用)
- %systemdrive%\ inetpub \ logs \ logfilesでiisログを確認します
- 詳細なHTTPエラー診断のためにIISマネージャーでの失敗した要求トレースを有効にする
基本的に、右のw3wp.exeに接続し、デバッグモードがオンになっていることを確認し、必要に応じてログを使用します。どのプロセスをターゲットにするかがわかったら、それは簡単です。
以上がIISで実行されているアプリケーションをデバッグする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Stock Market GPT
AIを活用した投資調査により賢明な意思決定を実現

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

32ビットアプリケーションサポートを有効にすることが重要なステップです。 IIS Managerで対応するアプリケーションプールを見つけて、「32ビットアプリケーションを有効にする」をtrueに設定する必要があります。 2。変更後にアプリケーションプールをリサイクルして、構成を有効にします。 3. 32ビットDLLまたはCOMコンポーネントが、SYSWOW64ディレクトリのREGSVR32を介して登録されていることを確認し、アプリケーションプールIDの権限を確認します。

uselogparsertoidentifyslow-runningRequestsbyqueryingthetime-taken andsortingindessindessindestofindthetop10slowestrequests、helpsdetectectinefficientingpots;

識別theCorrectw3wp.exeprocessbyrunningiisiisappincommandplompttoMatchyourappのsapplicationpootlwithitspid.2.invisualstudio、attachthedebuggerstotheidefiedifiedifiedifiedifiedw.exeprocess、selectingtheappuratedebuggertype(&edorcoreclreclrede)

tomanageiiiswithpowershell、firstinstallandimportthewebadministrationmodule、thenusetheiis:driveandcmdletStoccreateewebsites、configureaplicationpools、setbindings、andsignslcertificates for automated、repationsladministration。

IISでASP.NET機能を有効にします。 2。ASPNET_REGIIS-Iを管理者として実行して、ASP.NETを登録します。 3.アプリケーションプールで正しい.NETバージョンと統合パイプラインモードを設定します。 4.付与ウェブサイトフォルダーIIS_IUSRSおよびアプリケーションプールのアイデンティティの許可を読み取り、実行します。 5.オプションで、失敗した要求追跡とログをチェックすることを有効にします。 6.イベントビューアのファイルエラーとアプリケーションエラーを確認します。上記の手順を順番に実行することにより、IISのインストール後に発生する「サーバーアプリケーションエラー」を解決し、ASP.NETがアプリケーションプールを正しく登録および構成し、最終的にWebサイトを正常に実行することを確認できます。

要求のサイズとURLの制限を確認し、web.configでmaxallowedcontentlength、maxrequestlength、maxurl、maxquerystringを調整して、制限問題を解決します。 2.無効な要求ヘッダーまたはエンコーディングを確認し、フィドラーまたは失敗したリクエストを使用して、間違ったヘッダーを追跡および識別し、修正します。 3. HTTPS/SSLの問題のトラブルシューティング、クライアントがHTTPSを使用し、SNIを正しく構成し、バインディングマッチを持っていることを確認します。 4.モデルの結合エラーを避けるために、要求本体が正しくフォーマットされ、コンテンツタイプが一致していることを確認します。 5。URLで特殊文字をエンコードし、使用することを慎重に使用します

IISの特定のWebサイトのロギングをオフにするには、最初にIISマネージャーでターゲットWebサイトを見つけ、「ログ記録」設定を入力します。1。「ログスケジュール」を「なし」に設定します。古いログは自動的に削除されず、手動でクリーニングする必要があることに注意してください。同時に、ログパスが共有されているかどうか、許可が正常かどうか、および監視ツールがログに依存して後続の問題を回避するかどうかを確認します。

phpをインストールし、php.iniを構成して、必要な拡張機能を有効にします。 2。IISでCGI関数を有効にします。 3.PHPをIISマネージャーを介してFASTCGIアプリケーションとして登録し、 *.PHPマッピングを追加します。 4. info.phpテストファイルを作成して構成を確認し、許可とパスが正しいことを確認し、必要に応じてIISを再起動します。
