「IIS メタベースにアクセスできません。」にハマってみて回避できてない
諸事情でデバッグ環境をローカルの IIS でやる必要が出て、その設定したコミットを作業してるブランチに取り込んだら、急にプロジェクト開く時にこんなメッセージが出た。
Web アプリケーション プロジェクト ***** は IIS を使用するように構成されています。IIS メタベースにアクセスできません。コンピューター上の IIS Web サイトにアクセスするための十分な権限がありません。
ほう、何のことだ。と思いつつ、inetpub 以下に権限とか無いんだろうと思って、ユーザに読み書き権限与えたりしてたけどいっこうに上手くいかない。
「IIS メタベースの方か」と思い直し以下のリンクに従い ASP.NET の IIS へのアンインストール・インストールの作業をしてみる。インストール順序の違いで上手くいかなかった時に試したような手だ。
でもダメ。
そもそも、IIS メタベースへのユーザ権限が無いんじゃないの的なのを見つけたのでそれも試してみる。MSDN によれば -ga
オプションでいけるようだ。
aspnet_regiis.exe -ga コンピュータ名\ユーザ名
うーん、効果無し。.NET Framework も複数バージョンかつ 64 bit 版とかも入ってたので、順番に試し続けてみたけど良い結果は得られず。
とりあえず
なんとなく管理者権限で Visual Studio を起動して、ソリューション開いてみたらいけた。。いや、これ解決策じゃねぇよな。
解決策はあるのか?
たぶんあるんだと思うけど見つけられず。最後に見つけた以下のサイト。
After installing Visual Studio 2012 and opening my solution I get a series of errors in this form: The Web Application Project Foo is configured to use IIS. Unable to access the IIS metabase. You do not have sufficient privilege to access IIS web sites on your machine. I get this for each of our web applications. Things I have tried: Running Visual Studio as Administrator Running aspnet_regiis.exe -ga MyUserName Running aspnet_regiis.exe -i
同じような事に陥って同じような対処して、Administrator で一旦なんとかしてるって点まで同じだ。。
一応、この人は再インストールしたら直った的な感じで締めてるんだけど、他のコメントは「Admin でいいじゃん」か「ちゃんとその方法のやり方あってるか?」的な感じか。
もちょっと調べてみるが、当面は管理者権限でたちあげて乗り切るかな。