(IIS)Windows10 で IISが起動できない
2018-05-20 00:27:05
Windows10 Pro でIISが起動できない事象に陥り、起動できるようになったまでの備忘録。
原因としては、Win8→Win10へのアップデートや、VisualStudio2015を入れてからIIS入れたなどの理由から古いデータを読み込んでいたような感じでした。
1.IIS導入
下記URLでIIS設定、「ファイアウォールの設定」まで行う。
2.IIS起動確認
localhostに接続して、本来ならこれでIISのデフォルトページが表示されるはず。
が、アクセスできない。
IIS管理画面から起動しているか確認。
[コントロール パネル\すべてのコントロール パネル項目\管理ツール] から、「インターネット インフォメーション サービス (IIS) マネージャー」を開く
次の通り「開始」を選択。
すると、こんなエラーがでる。
3.WASとW3SVCをサービスから手動で有効にしてみる
ちなみに、WASとW3SVCはサービスでは以下の名前で表示されている。
W3SVC:World Wide Web 発行サービス
WAS:Windows プロセスアクティブ化サービス
[コントロール パネル\すべてのコントロール パネル項目\管理ツール] から「サービス」を開く
しかし手動で起動してみたら次のエラーがでた。
4.IISのログを確認
c:\windowsにあるiis.logを確認
フォルダから直接開けないので、デスクトップにコピーしてから開く。
一番下が最新のログ
[05/19/2018 20:07:39] [ ***** IIS 10.0 Component Based Setup ***** ]
[05/19/2018 20:07:39] .\inetsrv\iissetup.exe /install SharedLibraries /nano
[05/19/2018 20:07:39] Setting Installation Type to Nano
[05/19/2018 20:07:39] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue.
[05/19/2018 20:07:39] < !!FAIL!! > Failed to create the NetFrameworkConfigurationKey key container (result=0x8009000f)
[05/19/2018 20:07:39] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f
[05/19/2018 20:07:39] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f
[05/19/2018 20:07:39] [ End of IIS 10.0 Component Based Setup ]
4.エラーログへの対応
エラーによると、下記URLの人に非常に近いので、ベストアンサーを実行する。
1 以下のフォルダを開く
C:\Users\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys
2 d6d986f09a1ee04e24c949879fdb506c_* から始まるファイルを探す。
ファイルを開き、”NetFrameworkConfigurationKey”という文字列があるか確認する。
※検索で出てこないので、直接キーボード打って目当てのファイルを探しました。
※直接ファイルを開けないので、デスクトップにコピーしてから開きましたが、コピーも権限がないのでできません。
※なので、まずはプロパティのセキュリティから権限を付与してコピーして文字列確認という手順で進めました。
3 2番のファイルをバックアップする。
※私の場合は2でバックアップ済み。
4 2のファイルを削除する。
5 同じように、
76944fb33636aeddb9590521c2e8815a_*
から始まるファイルを探して 2~4を実行。
※私の場合、このファイル内に”NetFrameworkConfigurationKey”という文字列はありませんでしたが、結局削除しないと解決しませんでした。
6 同じように、
6de9cb26d2b98c01ec4e9e8b34824aa2_*
から始まるファイルを探して 2~4を実行。
※私の場合、このファイル内に”NetFrameworkConfigurationKey”という文字列は
ありませんでしたが、結局削除しないと解決しませんでした。
7 手動でWASを開始する。必ずコマンドプロンプロから実行!!
・管理者権限でコマンドプロンプトを起動
・net start WAS
これでWAS開始できて、IISも正常稼働しました。
結果的に、WASだけ起動できればIISも稼働するようだ。
localhostでつながるように!
【補足】
VisualStudioでローカルIISにビルドする場合は、VisualStudioを管理者権限で実行しないと
エラーでビルドできません。