2008年3月10日月曜日

IISのインストール

コントロールパネル--->プログラムの追加と削除--->Windowsコンポーネントの追加と削除
でインターネットインフォメーションサービス(IIS)をチェックしてインストールする。
途中ファイアーウォールに警告されるので、許可を選択する。
これでインストールは完了。
インストールが完了すればIISは動作し始める。


作成したサイト(http://localhost/WebSite1/mypage_start.aspx)
にアクセスしたら、下記のように言われた。
------------------------------------------------------------------------------
XML ページを表示できません
XSL スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。
[更新] ボタンをクリックするか、または後でやり直してください。


無効な文字で名前が始まりました。リソース 'http://localhost/WebSite1/mypage_start.aspx' の実行エラーです。ライン 1、位置 2

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="mypage_start.aspx.vb" Inherits="_Default" %>
-^
------------------------------------------------------------------------------


同様の現象について下記サイトには、
VisualStudioを入れた後にIISを入れたことが原因
ではないかとの書き込みがあった
http://rararahp.cool.ne.jp/cgi-bin/lng/dotnet/dotnetlng.cgi?print+200605/06050005.txt
------------------------------------------------------------------------------
クレオ 2006/05/11(木) 12:49:02

実は、VisualStudioをインストールした後に、IISをインストールしました。
これが原因でしょうか?

しかし、
http://park16.wakwak.com/~mimi/dotnet/network/install_iis_after_sdk.html
にならって
aspnet_regiis.exeとregsvr32を実行してみたのですが
aspnet_regiis.exeは無事完了。
regsvr32が失敗してしまいます。
以下のエラーがでます。

aspnet_isapi.dllは読み込まれましたが、DllRegisterServerエントリポイントが見つか
りませんでした。このファイルが登録されていない可能性があります。

クレオ 2006/05/12(金) 08:38:39
[[解決]]

今日になってアクセスしてみたら動きました。(?)
なんにも変えてないんですけどね。
OSの再起動が必要だったのでしょうか?
------------------------------------------------------------------------------


とりあえず
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis.exe -i
を実行してみたところ、
エラーが下記のように変わった!
------------------------------------------------------------------------------
'/' アプリケーションでサーバー エラーが発生しました。
--------------------------------------------------------------------------------

構成にエラーがあります。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成ファイルに変更を加えてください。

パーサー エラー メッセージ: アプリケーション レベルを超えて allowDefinition='MachineToApplication' として登録されているセクションを使うことはできません。このエラーは、仮想ディレクトリが IIS でアプリケーションとして構成されなかった場合に発生します。

ソース エラー:


行 50: を有効にします。
行 51: -->
行 52:
行 53: セクションは、要求の実行中にハンドル


ソース ファイル: c:\inetpub\wwwroot\website1\web.config 行: 52


--------------------------------------------------------------------------------
バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.832; ASP.NET バージョン:2.0.50727.832
------------------------------------------------------------------------------


下記サイトにエラー回避方法(というかサイトの配置手順)があった!
http://www.takebay.net/~daigo-ao/paddlewiki.pl/title_4153502E4E45542054697073.html
------------------------------------------------------------------------------
Webサイトを配置するためには,

* 「ビルド」⇒「Webサイトの発行」で直接パスを指定して配置する
* さらに,IISで公開できるようにするためには,IISの管理画面で,配置したフォルダのプロパティを開き,「ディレクトリ」タブの「アプリケーションの設定」にある「作成」ボタンをクリック.
o そうすると,アイコンが変わる.これをやらないと以下のような意味不明なエラーがでて困ることになる..
------------------------------------------------------------------------------

これでとりあえず、ローカルアクセスなら(http://localhost/WebSite1/以下には)アクセスできるようになった!
しかし携帯からグローバルアドレスだとアクセスできない!
パケットをキャプチャーしたところ、携帯からのアクセス(TCP-SYN:ポート80)に全く反応していない様子。

下記設定にしたらグローバルアドレスでアクセスできた!
コントロールパネルのファイアウォール設定で
・ファイウォール有効の"例外を許可しない"のチェックをはずす
・詳細設定タブの、ネットワーク接続の設定の、myIPサービスを選択して、設定ボタンをして、"Webサーバー(HTTP)"をチェックする。

これでとりあえず動作確認は完了!