午前中まで使えたのに、午後になったら急に使えなくなった。
DefaultAppPoolを使うと正常に表示されるのに、追加したアプリケーションプールだと発生する。
結論から言うと、アプリケーションプールのパスワードの有効期限が切れたことが原因。
エラーログ
アプリケーションプールが停止するときに、以下のエラーと警告がイベントログに残っていた。
このようなエラーメッセージの場合は、後で紹介する方法で解決できるはずだ。
ログの名前 | System |
ソース | Microsoft-Windows-WAS |
イベントID | 5059 |
レベル | エラー |
アプリケーション プール 'HogeAppPool' は無効にされました。Windows プロセス アクティブ化サービス (WAS) はアプリケーション プールを提供しているワーカー プロセスを起動中にエラーが発生しました。アプリケーション プールは無効になっています。
ログの名前 | System |
ソース | Microsoft-Windows-WAS |
イベントID | 5057 |
レベル | 警告 |
アプリケーション プール 'HogeAppPool' が無効にされました。アプリケーション プール ID が無効であるため、Windows プロセス アクティブ化サービス (WAS) ではアプリケーション プールを処理するワーカー プロセスを作成できませんでした。
ログの名前 | System |
ソース | Microsoft-Windows-WAS |
イベントID | 5021 |
レベル | 警告 |
アプリケーション プールの ID 'HogeAppPool' が正しくありません。ID に対して設定されているユーザー名またはパスワードが間違っているか、またはユーザーにバッチ ログオンの権利がない可能性があります。ID が正しくない場合、アプリケーション プールは、アプリケーション プールが最初の要求を受信したときに無効になります。バッチ ログオンの権利が問題の原因である場合、Windows プロセス アクティブ化サービス (WAS) がログオンを再試行できるようにするには、権利を付与した後、IIS 構成ストア内の ID を変更する必要があります。アプリケーション プールに対する最初の要求が処理された後も ID が正しくない場合は、アプリケーション プールが無効化されます。データ フィールドにはエラー番号が含まれています。
アプリケーションプールのパスワード変更
1. IIS(インターネット・インフォメーション・サービス)を起動し、「アプリケーションプール」を選択。機能ビューから問題のアプリケーションプールを選択し、「詳細設定」をクリック。
2. 「詳細設定」ウィンドウから「プロセス モデル」の「ID」の「…」をクリック
3. 「アプリケーションプールID」ウィンドウから「カスタム アカウント」を選択し、「設定」をクリック
4. 「資格情報の設定」ウィンドウで「ユーザ名」「パスワード」「パスワードの入力確認」を入旅行し、「OK」をクリック
5. 「アプリケーションプールID」ウィンドウに戻るので、「OK」をクリックして完了!
これでアプリケーションプールが勝手に停止せず、サイトが開けるはず!
参考
アプリケーション プールの ID を指定する (IIS 7)
以上
written by @bc_rikko
バッチで
返信削除@echo off
net stop MSSQL$MICROSOFT##WID
net start MSSQL$MICROSOFT##WID
Iisreset /stop
Iisreset /start
net stop wsusservice
net start wsusservice
で解決しました
コメントありがとうございます。
削除ここ数年、Windows環境での開発をしていないので試せませんが、そんな方法もあったんですね!