次の方法で共有


チュートリアル : Visual Web Developer でのローカル IIS Web サイトの作成

更新 : 2007 年 11 月

Visual Web Developer を使用すると、Web ページとその他のファイルを別の場所に格納する Web サイトを作成して編集できます。Web ページとその他のファイルの格納先として選択できる場所は、次のとおりです。

  • ローカル ハード ディスク上のフォルダ内。ファイル システム Web サイトと呼ばれることもあります。

  • Microsoft Internet Information Services (IIS) のローカル コピーの下の Web アプリケーションとして。ローカル IIS Web サイトと呼ばれることもあります。

リモート サーバー上の Web サイトを使用することもできます。詳細については、「Visual Web Developer における Web サイトの種類」を参照してください。

このチュートリアルでは、ローカル コンピュータにインストールされている IIS のコピーで実行される 2 つの Web サイトを使用します。一方の Web サイトは、IIS のルート フォルダ (通常は C:\Inetpub\wwwroot) の下に物理的に存在します。2 番目の Web サイトは、ハード ディスク上の任意のフォルダにありますが、2 番目の Web サイトは、仮想ディレクトリを使用することで IIS で使用できます。

IIS を使用して Web サイトをテストできます。その他のユーザーがコンピュータに接続できるように設定されている場合、そのユーザーも Web サイトを使用できます。

a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

コンピュータで IIS を実行できない場合でも、Visual Web Developer を実行することで ASP.NET Web サイトを作成およびテストできます。詳細については、「チュートリアル : Visual Web Developer での基本的な Web ページの作成」を参照してください。

このチュートリアルでは、以下のタスクを行います。

  • IIS ルート下へのアプリケーションとページの作成

  • IIS 仮想ルートを使用するアプリケーションの作成

  • IIS を使用したページの実行

  • ソリューション エクスプローラでの IIS の使用

前提条件

このチュートリアルを実行するには、コンピュータにローカルで IIS をインストールし、管理者特権を持つユーザーとしてログインする必要があります。これは、IIS メタベース (IIS アプリケーションに関する情報が格納されている) を操作するのに管理者特権が必要であるためです。

IIS ルート下への Web サイトの作成

ここでは、IIS の既定フォルダ (通常は \Inetpub\wwwroot) の下に存在する Web サイトを作成します。

IIS ルートの下に新しいローカルの IIS Web サイトを作成するには

  1. Visual Web Developer を開きます。

  2. [ファイル] メニューの [新しい Web サイト] をクリックします。

    [新しい Web サイト] ダイアログ ボックスが表示されます。

  3. [Visual Studio にインストールされたテンプレート][ASP.NET Web サイト] をクリックします。

  4. [参照] をクリックします。

    [場所の選択] ダイアログ ボックスが表示されます。

  5. [ローカル IIS] をクリックします。

  6. [既定の Web サイト] をクリックします。

  7. 右上隅にある、[新しい Web アプリケーションの作成] アイコンをクリックします。

    このアイコンにはラベルはありませんが、マウス ポインタをアイコンの上に置くと、[新しい Web アプリケーションの作成] のツールヒント テキストが表示されます。

    WebSite という名前の新しいアプリケーションが [既定の Web サイト] の下に追加されます。

  8. 新しい Web サイトのボックスに「LocalIISWebSite」と入力し、[開く] をクリックします。

    [新しい Web サイト] ダイアログ ボックスが表示され、右端の [場所] ボックスに "https://localhost/LocalIISWebSite" と表示されます。

  9. [言語] ボックスで、作業に使用するプログラミング言語をクリックします。

    選択したプログラミングは、この Web サイトの既定値になります。ただし、複数のプログラミング言語でページとコンポーネントを作成すると、1 つの Web アプリケーションで複数の言語を使用できます。

  10. [OK] をクリックします。

    Visual Web Developer により新しい Web サイトが作成され、Default.aspx という名前の新しいページが表示されます。このページは、開いたままにしておいてください。この最初の Default.aspx ページでは、Web ページ分離コード モデルを使用します。詳細については、「ASP.NET Web ページのコード モデル」を参照してください。

Visual Web Developer では、Web サイト用のフォルダとファイルが作成されるだけでなく、IIS との対話により、サイトの IIS Web アプリケーションも作成されます。基本的に、Visual Web Developer では、フォルダとページを Web サイトとして認識できるようにするために、IIS を呼び出して、IIS で必要なメタデータを作成します。

作成されたファイルとフォルダを参照することで、Visual Web Developer が実行した処理の内容を調べることができます。

ローカルの IIS Web サイトの構造を調べるには

  1. Microsoft Windows の [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

    [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「C:\Inetpub\wwwroot」と入力し、[OK] をクリックします。

    a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

    IIS が別のドライブまたはフォルダにインストールされている場合は、適切なパスに変更します。

    \wwwroot の下に LocalIISWebSite という名前の新しいフォルダが表示されます。

  2. [パス] ダイアログ ボックスの [LocalIISWebSite] をダブルクリックします。

    次のような、Web サイトの内容が表示されます。

    • App_Data フォルダ。Visual Web Developer によって自動的に作成されます。

    • Default.aspx ページ。

    • 分離コード ファイル。Web アプリケーションの既定の言語によって、Default.aspx.cs または Default.aspx.vb のいずれかになります。

通常と同じように、Web サイトにページを追加できます。ただし、Web サイトに外部的にページを追加して、Visual Web Developer にアプリケーションの一部として認識させることもできます。この場合は、ページを表示するためにソリューション エクスプローラを更新する必要があります。

コントロールの追加とプログラミング

ここでは、ページに Button、TextBox、および Label の各コントロールを追加し、Button コントロールの Click イベントを処理するためのコードを記述します。

ページにコントロールを追加するには

  1. Visual Web Developer で、Default.aspx ページに切り替えるか、このページを開いて、デザイン ビューに切り替えます。

  2. Enter キーを何度か押して、空間を作ります。

  3. [ツールボックス][標準] タブから TextBox、Button、および Label の 3 つのコントロールをページにドラッグし、ページの div 要素内に配置します。

    a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

    ツールボックスが表示されない場合は、[表示] メニューの [ツールボックス] をクリックします。

  4. カーソルをテキスト ボックスの前に置いて、「Enter your name:」と入力します。

  5. Button コントロールをクリックし、[プロパティ] ウィンドウの [テキスト] を Display Name に設定します。

  6. Label コントロールをクリックし、[プロパティ] ウィンドウの [テキスト] をオフにします。

  7. Button コントロールをダブルクリックすると、Display Name というラベルが付きます。

    Visual Web Developer によって、エディタの個別のウィンドウに、ページのコード ファイルが表示されます。

    このファイルには、Button コントロールのスケルトン Click ハンドラが含まれています。

  8. Button コントロールをクリックした後、テキスト文字列を表示する次の強調表示されたコードを追加して、Click ハンドラを完成させます。

    a1zz9df4.alert_security(ja-jp,VS.90).gifセキュリティに関するメモ :

    ASP.NET Web ページのユーザー入力には、悪意のあるクライアントのスクリプトが含まれている可能性があります。既定では、ユーザー入力にスクリプトまたは HTML 要素が含まれていないことを保証するために、ASP.NET ページはポストバック時にページをチェックします。詳細については、「スクリプトによる攻略の概要」を参照してください。

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = Textbox1.Text & ", welcome to Visual Web Developer!"
    End Sub
    
    protected void Button1_Click(object sender, EventArgs e)
    {
        Label1.Text = TextBox1.Text + ", welcome to Visual Web Developer!";
    }
    
  9. ファイルを保存します。

    このチュートリアルの後半の「IIS Web アプリケーションのテスト」でこの Web ページをテストします。

Visual Web Developer の外部での Web サイトの更新

Visual Web Developer の外部からアプリケーションに新しいファイルを追加することで、Visual Web Developer が IIS パスを読み取っているかどうかを確認できます。

Visual Web Developer の外部で Web を更新するには

  1. メモ帳またはその他のテキスト エディタを使用して、Visual Basic または C# を使用しているかどうかによって、次のテキストを含む新しいファイルを作成します。

    <%@Page language="VB"%>
    <script runat="server">
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
       Button1.Text = "I was clicked!"
    End Sub
    </script>
    <html>
    <body>
    <form runat="server" id="form1">
    <asp:button runat="server" text="Button1" Id="Button1"
        OnClick="Button1_Click"></asp:button>
    </form>
    </BODY>
    </HTML>
    
    <%@Page language="C#"%>
    <script runat="server">
    protected void Button1_Click(object sender, System.EventArgs e)
    {
       Button1.Text = "I was clicked!";
    }
    </script>
    <html>
    <body>
    <form runat="server" id="form1">
    <asp:button runat="server" text="Button1" Id="Button1"
        OnClick="Button1_Click"></asp:button>
    </form>
    </BODY>
    </HTML>
    
  2. 名前 (TestPage.aspx) の下のパス (C:\inetpub\wwwroot\LocalIISWebSite) にファイルを保存します。

    a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

    IIS が別のドライブまたはフォルダにインストールされている場合は、適切なパスに変更します。

  3. Visual Web Developer のソリューション エクスプローラで、Web サイト名 (https://localhost/LocalIISWebSite/) をクリックし、[表示] メニューの [最新の情報に更新] をクリックします。

    追加したファイルを含めるように、Web サイトにあるファイルの一覧が更新されます。次に、Web ページをテストします。

IIS Web アプリケーションのテスト

ここで Web サイトをテストできます。

ローカルの IIS Web サイトをテストするには

  1. Visual Web Developer で、Default.aspx ページを開きます。

  2. Ctrl キーを押しながら F5 キーを押してページを実行します。

    ブラウザにページが表示されます。ブラウザの URL は "https://localhost/LocalIISWebSite/default.aspx" になっています。ページの要求は、(ポート番号のない) localhost に対して行われ、IIS によって処理されます。

  3. ブラウザにページが表示されたら、テキスト ボックスに自分の名前を入力し、[表示名] をクリックして、ページが動作していることを確認します。

  4. Visual Web Developer で、TestPage.aspx ページを開きます。

  5. Ctrl キーを押しながら F5 キーを押してページを実行します。

    ブラウザの同じインスタンスにページが表示されます。

  6. ブラウザにページが表示されたら、[Button1] をクリックして、ページが動作していることを確認します。

  7. ブラウザを閉じます。

別のコンピュータからコンピュータに接続できる場合は、サイトが公開サイトであるかのように、サイトへのアクセスを試すことができます。別のコンピュータからコンピュータに接続できない場合は、この手順をスキップできます。

サイトを公開サイトとしてテストするには

  • 別のコンピュータから、Web サーバー コンピュータ名、Web サイト名、および default.aspx をページとして含む URL を入力します。

    • ローカル エリア ネットワークでコンピュータにアクセスできる場合は、次のような URL を持つサーバーのコンピュータ名を使用します。

      http://server1/LocalIISWebSite/default.aspx

    • コンピュータ上のドメインをホストしている場合は、次のような URL を使用してページにアクセスできます。

      https://www.contoso.com/LocalIISWebSite/default.aspx

    • コンピュータがネットワーク上にあるか、インターネットに直接接続されている場合は、コンピュータの IP アドレスをサーバー名として使用できます。次に例を示します。

      http://172.19.195.700/LocalIISWebSite/default.aspx

      a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

      Windows ファイアウォールの設定により、他のコンピュータからアプリケーションを表示できない場合は、ポート 80 で Web サーバーを有効にする必要があります。この操作を実行するには、Windows ファイアウォールの [詳細設定] タブの [設定] をクリックします。詳細については、「patterns & practices セキュリティ ガイドライン インデックス」にアクセスして、Windows のファイアウォール設定に関する情報を検索してください。

IIS 仮想ルートとしての Web サイトの作成

ここまで見てきたように、IIS を使用すると、既定の Web サーバー ルート フォルダ (wwwroot) の下に物理的に存在する Web アプリケーションを作成できます。ただし、IIS 仮想ディレクトリを作成することもできます。これは、ハード ディスク上の任意の場所に配置できるファイルとフォルダを指す IIS Web アプリケーションです。

a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

セキュリティ上の理由から、IIS では、その他のコンピュータ上のフォルダを指す仮想ディレクトリを作成することはできません。仮想ディレクトリは、常にローカル コンピュータを指す必要があります。

ここでは、Visual Web Developer を使用して、コンピュータ上のローカル フォルダに格納される Web サイトを指す仮想ディレクトリを作成します。

最初に仮想ディレクトリを作成します。「チュートリアル : Visual Web Developer での基本的な Web ページの作成」などを完了して、Visual Web Developer で既にファイル システム Web サイトを作成している場合は、その Web サイトを使用できます。

仮想フォルダを使用してローカルの IIS Web サイトを作成するには

  1. Visual Web Developer で、[ファイル] メニューの [新しい Web サイト] をクリックします。

  2. [Visual Studio にインストールされたテンプレート][ASP.NET Web サイト] をクリックします。

  3. [参照] をクリックします。

    [場所の選択] ダイアログ ボックスが表示されます。

  4. [ローカル IIS] をクリックします。

  5. ツリー ビューの [開く Web サイトの選択] の下の [既定の Web サイト] をクリックし、隅にある [新しい仮想ディレクトリの作成] アイコンをクリックします。

    このアイコンにはラベルはありませんが、マウス ポインタをアイコンの上に置くと、[新しい仮想ディレクトリの作成] のツールヒント テキストが表示されます。

    [新規仮想ディレクトリ] ダイアログ ボックスが表示されます。

  6. [エリアス名] ボックスに「WebSite_vdir」と入力します。

    a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

    IIS で有効な名前を使用する限り、仮想ディレクトリには任意の名前を付けることができます。

  7. [フォルダ] ボックスに、次のいずれかを入力します。

    • 既存のファイル システム Web サイトのパス (ある場合)。正確なパスを覚えていない場合は、[参照] をクリックし、そのサイトのルート フォルダを検索します。

    • Web サイトのフォルダとファイルを格納するための新しいフォルダを作成するパス。

  8. [OK] をクリックします。

    存在しないフォルダを指定した場合、そのフォルダを作成するように Visual Web Developer から求められます。

    Visual Web Developer により [場所の選択] ダイアログ ボックスが表示され、作成した仮想ディレクトリを持つ IIS Web アプリケーションの一覧が更新されます。

  9. 作成した仮想ディレクトリを選択し、[開く] をクリックし、[OK] をクリックすると、Web サイトが作成されます。

    仮想ディレクトリが新しいフォルダ、または Web サイトを含まない既存のフォルダを指している場合、Visual Web Developer では、App_Data フォルダと既定のページが作成され、そのページがデザイナで開きます。

    仮想フォルダが既存のファイル システム Web サイトを指している場合、Visual Web Developer では [Web サイトは既に存在します] ダイアログ ボックスが表示されます。この場合、新しいフォルダを選択するか、既存のサイトを開くか、または既存の場所で新しい Web サイトを作成するかのオプションを選択できます。オプションを選択して [OK] をクリックすると、Visual Web Developer によってフォルダの内容がソリューション エクスプローラで表示され、Default.aspx ページが存在する場合はこのページが開かれます。

Web ページへのコントロールの追加

このチュートリアルの前半で実行したように、単純な ASP.NET Web ページを使用して、作成中の IIS Web サイトをテストします。既存のファイル システム Web サイトを使用している場合は、新しいページを作成する必要はありません。仮想ディレクトリが新しいフォルダを指している場合は、そのページを使用できます。

これが新しい Web サイトの場合は、そのページが正常に動作していることをテストできるように、既定のページにコントロールを追加します。

ページにコントロールを追加するには

  1. Visual Web Developer で、Default.aspx ページを開き、デザイン ビューに切り替えます。

  2. [ツールボックス][標準] タブから、TextBox、Button、および Label の各コントロールをページにドラッグし、div 要素内に配置します。

  3. Button コントロールをダブルクリックし、次の強調表示されたコードを追加します。

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = "Welcome to Visual Web Developer!"
    End Sub
    
    protected void Button1_Click(object sender, System.EventArgs e)
    {    
        Label1.Text = "Welcome to Visual Web Developer!";
    }
    
  4. ファイルを保存します。

仮想ディレクトリのテスト

ここで Web サイトをテストできます。

仮想ディレクトリを使用してローカルの IIS Web サイトをテストするには

  1. Visual Web Developer で Web サイトのページを開きます。Default.aspx ページ、または別のページでもかまいません。

  2. Ctrl キーを押しながら F5 キーを押してページを実行します。

    ブラウザにページが表示されます。ブラウザの URL は "https://localhost/Website_vdir/default.aspx" になっています。IIS が URL を解決する場合、Website_vdir という名前の仮想ディレクトリに関連付けられた物理パスを調べて、そこでページを検索します。

  3. ブラウザにページが表示されたら、Button コントロールをクリックして、ページが動作していることを確認します。

  4. ブラウザを閉じます。

別のコンピュータからコンピュータに接続できる場合は、前のセクションで使用したのと同じテストを実行して、ページへのアクセスを試すことができます。

ローカルの IIS Web サイトの削除

不要になったローカルの IIS Web サイトを削除することで、Visual Web Developer でローカルの IIS Web サイトを管理できます。次のように、使用しているローカルの IIS Web サイトの種類によって、削除の動作には大きな違いがあります。

  • IIS ルートの下の Web サイトを削除すると、IIS から Web アプリケーションが削除され、Web サイトのファイルとフォルダも削除されます。

  • 仮想ディレクトリを削除すると、Web サイトに関する IIS 情報は削除されますが、ローカル ファイル システム フォルダのファイルとフォルダはそのまま保持されます。

ローカルの IIS Web サイトを削除するには

  1. [ファイル] メニューの [ソリューションを閉じる] または [プロジェクトを閉じる] をクリックします。

  2. [ファイル] メニューの [Web サイトを開く] をクリックします。

  3. [Web サイトを開く] ダイアログ ボックスで、[ローカル IIS] をクリックします。

  4. チュートリアルの前半で作成した仮想ディレクトリの名前 (Website_vdir) をクリックします。

    a1zz9df4.alert_caution(ja-jp,VS.90).gif注意 :

    別の Web サイトを選択した場合、その Web サイトのファイルとフォルダが削除される可能性があります。

  5. 上隅の削除アイコンをクリックします。

    このアイコンにはラベルはありませんが、マウス ポインタをアイコンの上に置くと、[削除] のツールヒント テキストが表示されます。

  6. Web サイトの削除を確認するためのメッセージが表示されたら、[はい] をクリックします。

  7. [キャンセル] をクリックして [Web サイトを開く] ダイアログ ボックスを閉じます。

  8. ブラウザを開き、仮想ディレクトリの URL を入力します。

    https://localhost/Website_vdir/default.aspx

    今度は、IIS で Website_vdir がローカル コンピュータ上の Web サイトとして認識されなくなるため、ブラウザはページが見つからないことを報告します。

    a1zz9df4.alert_note(ja-jp,VS.90).gifメモ :

    ローカル ブラウザによってページをキャッシュすることもできます。その場合、ブラウザ キャッシュをフラッシュするまでページが表示されていることがあるため、ページの表示を再試行してください。

次の手順

このチュートリアルでは、IIS のローカル コピーを使用して、Web サイトを作成する方法について説明しました。Visual Web Developer で作成できるその他の種類の Web サイトについて学ぶこともできます。たとえば、次の操作を実行できます。

参照

概念

Visual Web Developer における Web サイトの種類

管理者権限を持たないユーザーとしての Visual Web Developer の使用