VB2008をインストールしたらIISのlocalhostに接続できなくなりました

タグの編集
投稿者 yamaV1.02Β  (社会人) 投稿日時 2009/6/8 08:23:25
お世話になります。

自宅の個人PC:XP_professionalで以前利用できていたIISのページが表示できなくなっている事に気づき(エラー500)、原因として、ノートン2009を疑い、

・ノートンをアンインストールし、

それでも繋がらず、えいっとPCのリカバリーをして(ついでにRAID0の構築をしました。)、一から設定しなおしたところ以前のようにIISのページを開くことができました。

で、リカバリー前の環境を取り戻すべくapplicationをインストールする作業を続けていたところ、VB2008expressをインストールした時点で、またもやIISのページを開く事ができなくなりました。

IISのWebサイトのプロパティ→ディレクトリ セキュリティ→編集 の「認証方法」の[匿名アクセス]のユーザー名を IUSER_<コンピュータ名> から< コンピュータ名>\Administrator に変更したところ、IISのページを開く事ができるようになりました。

僕が個人的にASPの動作を確認する為だけの環境なので、「繋がってよかった」で済むように考えていますが、納得できない動作です。

IISが定める「匿名アクセスのユーザー」である「IUSER_<コンピュータ名>」はページにアクセスできる権限を持ったアカウントである筈だ理解しています。

VB2008expressをインストールしたことで「IUSER_<コンピュータ名>」の権限に制限がかかったように見えるのですが、何がおきているのかお心当たりないでしょうか。

どんなものでしょう。

よろしくお願いいたします。

投稿者 yamaV1.02Β  (社会人) 投稿日時 2009/6/8 09:12:49
追加情報です。

>VB2008expressをインストールした時点で

http://www.microsoft.com/japan/msdn/vstudio/express/

↑ページのVISUAL BASIC2008 ExpressEdition「Web インストール (ダウンロード)」しかクリックしてないのですが、「Microsoft SQL Server 2008」も同時にインストールされたようです。(ちょっと不思議)。


VB2008expressだけを疑うのはちょっと違うようです。
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/6/8 09:56:47
> 表示できなくなっている事に気づき(エラー500)、

まずは、そのエラーの内容を記載してみてください。

もし、単に 500 としか表示されていないのだとしたら、おそらくは Internet Explorer の
[ツール]-[インターネット オプション]の詳細設定で、
『HTTP エラーメッセージを簡易表示する』モードになっているのだと思いますので、
簡易表示を解除した状態で、もう一度試してみてください。
投稿者 yamaV1.02β  (社会人) 投稿日時 2009/6/8 10:53:09
魔界の仮面弁士さん、いつもありがとうございます。

< コンピュータ名>\Administrator の他、< コンピュータ名>\ASPNET でもページは開きました。< コンピュータ名>\Guestという名前(RDN)もあったので試してみましたが、繋がりませんでした。

※↑ここで言っている「ページ」とは、http://localhost/iishelp/iis/misc/default.asp の事です。

IUSER_<コンピュータ名>で表示される(『HTTP エラーメッセージを簡易表示する』のチェックを外した上常態での)エラーの全文は以下です。(IE8)


ページを表示できません 
接続しようとするページに問題があるため、そのページを表示できません。 

--------------------------------------------------------------------------------

対処方法

[更新] をクリックするか、後で再度実行してください。

次のホームページ localhostを開き、 必要な情報が記載されたページへのリンクを探します。 
HTTP 500.100 - 内部サーバー エラー - ASP エラー
インターネット インフォメーション サービス

--------------------------------------------------------------------------------

技術情報 (サポート担当者用)

エラー タイプ
Microsoft VBScript 実行時エラー (0x800A0046)
書き込みできません。: 'GetObject'
/localstart.asp, line 40


ブラウザ タイプ
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) 

ページ
GET /localstart.asp 

時刻
2009年6月8日, 1:21:18 


詳細
Microsoft サポート 
 


で、IISをちょっとだけ試してた頃から3年ほど係わってなくて忘れていたのですが、

C:\Inetpub\wwwroot内に

index.htmlを作り、既定のWebサイトのプロパティのドキュメントタブに「index.html」を追加したら、

http://localhost/

への接続で、IUSER_<コンピュータ名>でページを開く事ができました。


こんな事で解決したのかぁ。。。リカバリまでしてしまった自分がちょっとアレです。

'-------------------------------

ただ、VBをインストールする以前には C:\Inetpub\wwwroot\index.html なんてファイル作らなくても、

http://localhost/iishelp/iis/misc/default.asp

↑(たしか)このページが開いたのです。

ところが、ところが、VBインストールしたとたん上記のエラーページしか開けなくなったので、うろたえてしまったという経緯でした。。。



ちょっと一安心しておりますが、何故VBインストール後は、http://localhost/iishelp/iis/misc/default.aspにIUSER_<コンピュータ名>では開けなくなってしまったのか、というのは引き続き謎のままです。

どんなものなのでしょうか。




投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/6/8 22:31:42
> 既定のWebサイトのプロパティのドキュメントタブに「index.html」を追加したら、
> http://localhost/
ファイル名を指定しなかった場合、まずは「既定のドキュメント」を探しに行きます。
この設定は、IIS の管理画面「ドキュメント」タブの中にあります。

この設定により、例えば、
 http://localhost/default.asp
 http://localhost/index.html
 http://localhost/iisstart.asp
などが指定されたのと同じ動きをするようになっています。


> ちょっと一安心しておりますが、何故VBインストール後は、
> http://localhost/iishelp/iis/misc/default.aspに
> IUSER_<コンピュータ名>では開けなくなってしまったのか、
それは、http://localhost/iishelp/iis/misc/default.asp」のアドレスを
直接指定しても開けないという事でしょうか。それとも、
「http://localhost/」から遷移しないという話でしょうか。


いずれにせよ、そのページを開くために、以下の点を確認してみてください。

(1) アクセスしているユーザーが、そのコンピュータの管理者アカウントであるかどうか。
(2) /IISHelp/ ディレクトリおよび /localstart.asp ファイルの「認証方法」が、
 以下の設定になっているかどうか。

・匿名アクセス…無効
・統合 Windows 認証…有効


> HTTP 500.100 - 内部サーバー エラー - ASP エラー
エラーメッセージからすると、これに近い状態ですね。
http://support.microsoft.com/kb/255650/ja
投稿者 yamaV1.02  (社会人) 投稿日時 2009/6/10 01:33:09
魔界の仮面弁士さん、いつもありがとうございます。


>それは、http://localhost/iishelp/iis/misc/default.asp」のアドレスを
>直接指定しても開けないという事でしょうか。それとも、
>「http://localhost/」から遷移しないという話でしょうか。

以下の状態です。

http://localhost/
とアドレスを指定した状態で、C:\Inetpub\wwwroot にindex.html|.htm があればページは開きます。が、index.html|.htm が存在しない状態だと、


HTTP 500.100 - 内部サーバー エラー - ASP エラー
インターネット インフォメーション サービス


になります。この時匿名ユーザーがIUSER_<PCNAME>だと、アドレスが http://localhost/localstart.aspに遷移しています。
IUSER_Administratorで上記の操作をすると、
http://localhost/localstart.asp が開き、http://localhost/iishelp/iis/misc/default.asp もついでのように開きます。

>(1) アクセスしているユーザーが、そのコンピュータの管理者アカウントであるかどうか。
⇒管理者権限です。IISのインストールされているPC上での操作でもあります。

>(2) /IISHelp/ ディレクトリおよび /localstart.asp ファイルの「認証方法」が、
> 以下の設定になっているかどうか。

IISの操作画面でツリー上からIISHelp,ディレクトリ,localstart.aspそれぞれのプロパティ⇒ディレクトリセキュリティ|ファイルセキュリティをプチプチとクリックしながら確認していくと、全て親ノードの設定を継承しているように見えます。

>・匿名アクセス…無効
⇒有効です。IUSER_<コンピュータ名>になっています。

>・統合 Windows 認証…有効
⇒有効です。

ただ、http://localhost/localstart.asp を指定して開くと'HTTP 500.100 - 内部サーバー エラー - ASP エラー'になりますが、http://localhost/iishelp/iis/misc/default.asp を指定して開くとエラーにはならず、ページを開く事ができます。

VBをインストールする以前は,http://localhost/ と指定しただけで、http://localhost/iishelp/iis/misc/default.asp が開いたような気がしているのです。(このページだったのかどうか確信はないのですが、少なくともエラーにはならなかったという記憶です)。

http://localhost/localstart.asp は、C:\Inetpub\wwwroot直下にあり、そのファイルセキュリティは、
>・匿名アクセス…無効
⇒有効です。IUSER_<コンピュータ名>になっています。

>・統合 Windows 認証…有効
⇒有効です。
なのですから、このページがIUSER_<コンピュータ名>のアカウントの設定で開けないという動作が理解できません。

どんなものでしょうか。